You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hive.apache.org by "Raghotham Murthy (JIRA)" <ji...@apache.org> on 2008/12/18 09:02:44 UTC

[jira] Created: (HIVE-187) ODBC driver

ODBC driver
-----------

                 Key: HIVE-187
                 URL: https://issues.apache.org/jira/browse/HIVE-187
             Project: Hadoop Hive
          Issue Type: New Feature
          Components: Clients
    Affects Versions: 0.2.0
            Reporter: Raghotham Murthy
             Fix For: 0.2.0


We need to provide the a small number of functions to get basic query
execution and retrieval of results. This is based on the tutorial provided
here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
 
The minimum set of ODBC functions required are:
SQLAllocHandle - for environment, connection, statement
SQLSetEnvAttr
SQLDriverConnect
SQLExecDirect
SQLNumResultCols
SQLFetch
SQLGetData
SQLDisconnect
SQLFreeHandle
 
If required the plan would be to do the following:
1. generate c++ client stubs for thrift server
2. implement the required functions in c++ by calling the c++ client
3. make the c++ functions in (2) extern C and then use those in the odbc
SQL* functions
4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Ning Zhang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ning Zhang updated HIVE-187:
----------------------------

    Attachment: thrift_64.r790732.tgz

Uploading thrift_64.r790732.tgz the complete 64 bit thrift libs (including libfb303.a) & binaries . These libraries are compiled under CentOS 5.2 (kernel 2.6.20, GCC 4.1.2) 

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.6.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, HIVE-187.3.patch, hive-187.4.patch, thrift_64.r790732.tgz, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14-hive-patched.tar.gz, unixODBC-2.2.14.tgz, unixodbc.patch
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: HIVE-187.2.patch

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: HIVE-187.1.patch

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Raghotham Murthy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Raghotham Murthy updated HIVE-187:
----------------------------------

    Attachment: hive-187.4.patch

added package-cpp target to include hive cpp libraries and include in dist.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, HIVE-187.3.patch, hive-187.4.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14.tgz

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Status: Patch Available  (was: Open)

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Jeff Hammerbacher (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12715319#action_12715319 ] 

Jeff Hammerbacher commented on HIVE-187:
----------------------------------------

Hey,

Has there been any progress on this issue or updates to the roadmap?

Thanks,
Jeff

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Ashish Thusoo
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14-2.tgz

unixODBC-2.2.14-2:
Changed some deprecated functions to pass control to newer equivalents when called.
Modified how some error cases are being detected.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14.tgz
                thrift_home_linux_64.tgz
                thrift_home_linux_32.tgz

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment:     (was: unixODBC-2.2.14.tgz)

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14.tgz

Fixed a compile bug.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Johan Oskarsson (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Johan Oskarsson updated HIVE-187:
---------------------------------

    Fix Version/s:     (was: 0.2.0)
                   0.4.0

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Status: Open  (was: Patch Available)

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Raghotham Murthy (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12739849#action_12739849 ] 

Raghotham Murthy commented on HIVE-187:
---------------------------------------

@prasad, its better to build from the instant releases (which dont require bootstrap.sh). The instructions should indicate downloading an instant release from: http://gitweb.thrift-rpc.org/?p=thrift.git;a=shortlog;h=refs/misc/instant. There are a couple problems running bootstrap.sh on macs.

Ideally, specifying a prefix on which you have write permissions should be enough. but, java and python modules get written in the same location that java and python installations exist. for that we need sudo. we can get a full installation of thrift on a local directory by running make install after specifying the appropriate DESTDIR, PY_PREFIX and JAVA_PREFIX env variables.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14-3.tgz

Added some minor modifications to the unixODBC API wrapper that allows for proper handling of result sets without any rows.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12742632#action_12742632 ] 

Eric Hwang commented on HIVE-187:
---------------------------------

I just attached a new patch with some minor changes:
-Fixed some error handling cases in the unixODBC API wrapper
-Completed driver support for metadata calls: SQLColumns and SQLTables
-Slight performance tweak to string copying
-Included support for new HiveMetaStore's get_schema method to correctly return the entire schema (fields + partition)

Make sure that you use HIVE-187.2.patch with the newest unixODBC API wrapper: unixODBC-2.2.14-1.tgz

Build instructions and notes may be found in the the aforementioned apache wiki link.

-Eric


> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Carl Steinbach (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Carl Steinbach updated HIVE-187:
--------------------------------

    Attachment: unixODBC-2.2.14-hive-patched.tar.gz

Attaching a copy of unixODBC-2.2.14 with Eric's patch already applied.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, HIVE-187.3.patch, hive-187.4.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14-hive-patched.tar.gz, unixODBC-2.2.14.tgz, unixodbc.patch
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: HIVE-187.3.patch

Uploaded a new patch with minor changes:
Combined hiveclient.hpp with hiveclient.h to prevent duplication of header info.
Fixed some formatting issues
Did some clean up on test cases
Changed the thrift generated namespaces to be more specific


> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, HIVE-187.3.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment:     (was: unixODBC-2.2.14.tgz)

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Prasad Chakka (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12739836#action_12739836 ] 

Prasad Chakka commented on HIVE-187:
------------------------------------

some comments on the build process

1)Thrift build process:
need to execute bootstrap.sh before configure
make install fails without sudo

2)Unixodbc:
readline issue. Possibly set --enable-readline=no while configuring unixodbc to avoid this?
need to do ldconfig after unixodbc is installed

3)
'Select * ' and 'explain select ...' crash isql.

haven't finished looking at the code...

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12738494#action_12738494 ] 

Eric Hwang commented on HIVE-187:
---------------------------------

I should probably also note that the Hive Server is currently not thread safe (see JIRA HIVE-80: https://issues.apache.org/jira/browse/HIVE-80). This will prevent the driver from safely making multiple connections to the same Hive Server. We need to resolve this issue to allow the driver to operate properly.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12740377#action_12740377 ] 

Eric Hwang commented on HIVE-187:
---------------------------------

I have added a wiki page documenting the Hive ODBC Driver. Please refer to the following page for driver build and usage instructions:

http://wiki.apache.org/hadoop/Hive/HiveODBC

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Raghotham Murthy (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12715324#action_12715324 ] 

Raghotham Murthy commented on HIVE-187:
---------------------------------------

we are picking this up again. the plan is to get something out within the next couple months.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Ashish Thusoo
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12736746#action_12736746 ] 

Eric Hwang commented on HIVE-187:
---------------------------------

Hi all,

The ODBC driver that I am now working on supports most of the basic ODBC functionality for connecting, executing queries, and fetching results. The build process is proving to be a little more complicated because the driver was developed using the unixODBC framework, which cannot be committed into the apache repo, but I'll see if I can include it as an attachment to this JIRA. If all goes well, I should have a patch up by the end of this week. Thanks for waiting guys.

Regards,
Eric

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Raghotham Murthy (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Raghotham Murthy updated HIVE-187:
----------------------------------

    Attachment: unixodbc.patch

Patch file for unixodbc. Download unixodbc from http://www.unixodbc.org/unixODBC-2.2.14.tar.gz. Untar  and then apply patch by running patch -p0 < unixodbc.patch from the top level directory.

Then follow directions in http://wiki.apache.org/hadoop/Hive/HiveODBC

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, HIVE-187.2.patch, HIVE-187.3.patch, hive-187.4.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14-2.tgz, unixODBC-2.2.14-3.tgz, unixODBC-2.2.14.tgz, unixodbc.patch
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

    Attachment: unixODBC-2.2.14-1.tgz

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch, thrift_home_linux_32.tgz, thrift_home_linux_64.tgz, unixODBC-2.2.14-1.tgz, unixODBC-2.2.14.tgz
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Ashish Thusoo (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12715725#action_12715725 ] 

Ashish Thusoo commented on HIVE-187:
------------------------------------

The plan is to modify psqlodbc to get this rolling. The information of this driver is available at

http://pgfoundry.org/projects/psqlodbc/

One issue is that this drivers is LGPL - I am not sure that is a show stopper, but I feel there is enough work here that we should reuse this for our ends.


> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Ashish Thusoo
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HIVE-187) ODBC driver

Posted by "Ashish Thusoo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ashish Thusoo reassigned HIVE-187:
----------------------------------

    Assignee: Ashish Thusoo

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Ashish Thusoo
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HIVE-187) ODBC driver

Posted by "Ashish Thusoo (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ashish Thusoo reassigned HIVE-187:
----------------------------------

    Assignee: Eric Hwang  (was: Ashish Thusoo)

Eric is working on this full time. Sorry for all the ownership transfers..

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Commented: (HIVE-187) ODBC driver

Posted by "Jeff Hammerbacher (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12736740#action_12736740 ] 

Jeff Hammerbacher commented on HIVE-187:
----------------------------------------

Hey Eric,

Has there been any progress on the ODBC driver?

Thanks,
Jeff

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HIVE-187) ODBC driver

Posted by "Eric Hwang (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HIVE-187?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Eric Hwang updated HIVE-187:
----------------------------

      Tags: ODBC
    Status: Patch Available  (was: Open)

Hi All,

I have attached the first version of the patch for the Hive ODBC driver. Please keep in mind that this is still an initial version and is still very rough around the edges. However, it provides basic ODBC 3.51 API support for connecting, executing queries, fetching, etc. This driver has been successfully tested on 32-bit and 64-bit linux machines with iSQL. It has also been tested with partial success on applications such as MicroStrategy. The driver consists of two sections: the Hive client and the unixODBC API wrapper. The patch only contains the Hive client, while the unixODBC portion will be uploaded as a separate attachment that will not be part of this repository (for licensing reasons).

My development environment for this driver is as follows:
gcc/g++ version: (GCC) 4.0.2 20051125 (Red Hat 4.0.2-8)
thrift trunk version: r790732 (the latest revision should be fine)


Instructions to build and use the Hive ODBC Driver:

I. Building Thrift:
1. Get the latest revision of Thrift from http://incubator.apache.org/thrift/download/.
2. Make and install thrift after tar extraction with the following commands (courtesy of Raghu):
# Configure and build thrift compiler and libraries
$ cd thrift-instant-r790732
$ ./configure --without-csharp --without-ruby --prefix=<thrift_install_path> && make -j4

# Install thrift
$ make install

# Configure, build, and install fb303
$ cd contrib/fb303
$ ./bootstrap.sh
$ ./configure --with-thriftpath=<thrift_install_path> --prefix <thrift_install_path>
$ make && make install
2a. I have also attached the precompiled Linux 32bit and 64bit versions of Thrift for your convenience.

II. Building the Hive client (requires step I):
1. From the hive root directory, run:
$ ant compile-cpp -Dthrift.home=<thrift_install_path>
- <thrift_install_path> should be an absolute path (a.k.a not relative) pointing to the root Thrift installation directory. The <thrift_install_path> referenced in parts I and II should have the same value.
- You may optionally add '-Dword.size' with a value of 32 or 64 to specify the type of architecture the driver should compile into, but will detect this automatically on its own if unspecified.
- If you get an undefined reference to vtables error, make sure that you specified the complete absolute path for thrift.home.
2. Manually install the Hive client libraries by copying the contents of <hive_root>/build/odbc/lib and <hive_root>/build/odbc/include into the corresponding system folders. You may have to run ldconfig to update the dynamic linker's runtime libraries.
NOTE: the compiled static library, libhiveclient.a, requires linking with stdc++ as well as thrift to function properly.
3. When running the Hive test suite with 'ant test', specifying the argument '-Dthrift.home=<thrift_install_path>' will enable the tests for the Hive client. Keep in mind that the Hive client tests require a locally running Hive server on port 10000 to execute properly. I apologize for the messiness of the test code, which I whipped up rather quickly. This should be remedied in a later revision.


III. Building unixODBC (requires step II):
1. After extracting the unixODBC attachment, run:
$ ./configure --enable-gui=no
$ make
$ make install
- This will compile and install all of unixODBC, including the ODBC API wrapper for the Hive client. The ODBC API wrapper for the Hive client should be called libodbchive.so.

IV. Installing the Hive driver into a Driver Manager (requires all prior steps):
1. Find the odbc.ini file corresponding to the desired ODBC Driver Manager. If you are using unixODBC's Driver Manager, you should be able to run 'odbcinst -j' to list out the paths to important configuration files.
2. Add the following entry to odbc.ini:
[Hive]
Driver = <path_to_libodbchive.so>
Description = Hive Driver v1
DATABASE = default
HOST = <Hive_server_address>
PORT = <Hive_server_port>
FRAMED = 0

Now you should be able to test out the new Hive ODBC driver with your applications that connect through this Driver Manager. If the Driver Manager reports that it cannot open the driver's shared library, make sure that libodbchive.so and libhiveclient.so have all dynamic library paths resolved and that they are both compiled into the proper architecture (32 or 64 bit). Tell me if you find the instructions to be confusing or incomplete.

> ODBC driver
> -----------
>
>                 Key: HIVE-187
>                 URL: https://issues.apache.org/jira/browse/HIVE-187
>             Project: Hadoop Hive
>          Issue Type: New Feature
>          Components: Clients
>    Affects Versions: 0.2.0
>            Reporter: Raghotham Murthy
>            Assignee: Eric Hwang
>             Fix For: 0.4.0
>
>         Attachments: HIVE-187.1.patch
>
>
> We need to provide the a small number of functions to get basic query
> execution and retrieval of results. This is based on the tutorial provided
> here: http://www.easysoft.com/developer/languages/c/odbc_tutorial.html
>  
> The minimum set of ODBC functions required are:
> SQLAllocHandle - for environment, connection, statement
> SQLSetEnvAttr
> SQLDriverConnect
> SQLExecDirect
> SQLNumResultCols
> SQLFetch
> SQLGetData
> SQLDisconnect
> SQLFreeHandle
>  
> If required the plan would be to do the following:
> 1. generate c++ client stubs for thrift server
> 2. implement the required functions in c++ by calling the c++ client
> 3. make the c++ functions in (2) extern C and then use those in the odbc
> SQL* functions
> 4. provide a .so (in linux) which can be used by the ODBC clients.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.