phoenix-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "ASF GitHub Bot (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (PHOENIX-831) First Connection to Phoenix blows up if it is tenant specific
Date Tue, 11 Mar 2014 07:20:44 GMT

    [ https://issues.apache.org/jira/browse/PHOENIX-831?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13930039#comment-13930039
] 

ASF GitHub Bot commented on PHOENIX-831:
----------------------------------------

Github user yaise commented on a diff in the pull request:

    https://github.com/apache/incubator-phoenix/pull/15#discussion_r10463718
  
    --- Diff: phoenix-core/src/main/java/org/apache/phoenix/jdbc/PhoenixConnection.java ---
    @@ -119,7 +116,36 @@ private static Properties newPropsWithSCN(long scn, Properties props)
{
             props.setProperty(PhoenixRuntime.CURRENT_SCN_ATTRIB, Long.toString(scn));
             return props;
         }
    -    
    +
    +    /**
    +     * Strips out tenant specific information from the passed in properties before creating
a connection.
    +     *
    +     * @return a new Phoenix Connection.
    +     * @throws SQLException
    +     */
    +    public static PhoenixConnection newTenantLessConnection(ConnectionQueryServices services,
String url, Properties props, PMetaData metaData) throws SQLException {
    +        if( props != null && props.getProperty(PhoenixRuntime.TENANT_ID_ATTRIB)
!= null ) {
    +            //java.util.properties has a copy constructor but that doesn't do a deep
copy.
    +            // Instead it holds the props passed into the copy constructor as a reference(defaults)
which is pretty much immutable.
    +            // The tenantId might either be in a given property map or the property map
it wraps.
    +            if(props.containsKey(PhoenixRuntime.TENANT_ID_ATTRIB)) {
    --- End diff --
    
    I actually don't need another if/else block inside. The else block will work in both cases.
just trying to avoid creating another copy if I don't have to, since PhoenixConnection's constructor
creates a wrapper anyways.


> First Connection to Phoenix blows up if it is tenant specific
> -------------------------------------------------------------
>
>                 Key: PHOENIX-831
>                 URL: https://issues.apache.org/jira/browse/PHOENIX-831
>             Project: Phoenix
>          Issue Type: Bug
>    Affects Versions: 3.0.0
>            Reporter: Somesh Sasalatti
>
> Driver driver = DriverManager.getDriver(url);
> Properties props = new Properties();
> final String tenantId = "00Dxx0000001234";
> props.put(PhoenixRuntime.TENANT_ID_ATTRIB, tenantId);
> Connection connection = driver.connect(url, props);
> BOOM!
> I have pull request coming shortly



--
This message was sent by Atlassian JIRA
(v6.2#6252)

Mime
View raw message