You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cassandra.apache.org by "Cathy Daw (JIRA)" <ji...@apache.org> on 2011/04/23 02:56:05 UTC

[jira] [Created] (CASSANDRA-2545) CQL: Syntax error performing batch updates

CQL: Syntax error performing batch updates
------------------------------------------

                 Key: CASSANDRA-2545
                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
             Project: Cassandra
          Issue Type: Bug
    Affects Versions: 0.8 beta 1
            Reporter: Cathy Daw


*CQL Test Case*
{code}
//TEST CASE #1
BEGIN BATCH
UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
APPLY BATCH	

//TEST CASE #2
BEGIN BATCH USING CONSISTENCY ZERO
UPDATE users SET state = 'TX' WHERE KEY = 'user1';
UPDATE users SET state = 'TX' WHERE KEY = 'user2';
UPDATE users SET state = 'TX' WHERE KEY = 'user3';

//ERROR
Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY

APPLY BATCH	
{code}

*Test Setup*
{code}
CREATE COLUMNFAMILY users (
  KEY varchar PRIMARY KEY,
  password varchar,
  gender varchar,
  session_token varchar,
  state varchar,
  birth_year bigint);

INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
{code}

*Documented Syntax*
{panel}
BEGIN BATCH [USING <CONSISTENCY>]
UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
APPLY BATCH
{panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Eric Evans commented on CASSANDRA-2545:
---------------------------------------

This is a cqlsh bug.  The attached patch is an improvement, but could probably be improved upon.

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v1-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: cqlsh error running batch update commands

Posted by "Cathy Daw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13025384#comment-13025384 ] 

Cathy Daw commented on CASSANDRA-2545:
--------------------------------------

The patch works fine.

> CQL: cqlsh error running batch update commands
> ----------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: cqlsh error running batch update commands

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

Cathy Daw updated CASSANDRA-2545:
---------------------------------

    Summary: CQL: cqlsh error running batch update commands  (was: CQL: Syntax error performing batch updates)

> CQL: cqlsh error running batch update commands
> ----------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: cqlsh error running batch update commands

Posted by "Cathy Daw (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13025003#comment-13025003 ] 

Cathy Daw commented on CASSANDRA-2545:
--------------------------------------

*I received the build error when building on my MacOSX and Centos 5.5 builds*
{noformat}
SyntaxError: ('invalid syntax', ('/usr/lib/python2.6/site-packages/cql/cursor.py', 139, 34, '        except TimedOutException::\n'))
{noformat}

*Full build output*
{noformat}
[cassandra@cdaw-qa1 cql-1.0.0]$ sudo python setup.py install
[sudo] password for cassandra: 
running install
running build
running build_py
creating build
creating build/lib
creating build/lib/cql
copying cql/results.py -> build/lib/cql
copying cql/marshal.py -> build/lib/cql
copying cql/connection.py -> build/lib/cql
copying cql/cursor.py -> build/lib/cql
copying cql/decoders.py -> build/lib/cql
copying cql/__init__.py -> build/lib/cql
copying cql/errors.py -> build/lib/cql
copying cql/connection_pool.py -> build/lib/cql
creating build/lib/cql/cassandra
copying cql/cassandra/__init__.py -> build/lib/cql/cassandra
copying cql/cassandra/Cassandra.py -> build/lib/cql/cassandra
copying cql/cassandra/constants.py -> build/lib/cql/cassandra
copying cql/cassandra/ttypes.py -> build/lib/cql/cassandra
running build_scripts
creating build/scripts-2.6
copying and adjusting cqlsh -> build/scripts-2.6
changing mode of build/scripts-2.6/cqlsh from 644 to 755
running install_lib
copying build/lib/cql/cursor.py -> /usr/lib/python2.6/site-packages/cql
byte-compiling /usr/lib/python2.6/site-packages/cql/cursor.py to cursor.pyc
SyntaxError: ('invalid syntax', ('/usr/lib/python2.6/site-packages/cql/cursor.py', 139, 34, '        except TimedOutException::\n'))

running install_scripts
copying build/scripts-2.6/cqlsh -> /usr/bin
changing mode of /usr/bin/cqlsh to 755
running install_egg_info
Removing /usr/lib/python2.6/site-packages/cql-1.0.0-py2.6.egg-info
Writing /usr/lib/python2.6/site-packages/cql-1.0.0-py2.6.egg-info
{noformat}

> CQL: cqlsh error running batch update commands
> ----------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: cqlsh error running batch update commands

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

Cathy Daw updated CASSANDRA-2545:
---------------------------------

    Comment: was deleted

(was: *I received the build error when building on my MacOSX and Centos 5.5 builds*
{noformat}
SyntaxError: ('invalid syntax', ('/usr/lib/python2.6/site-packages/cql/cursor.py', 139, 34, '        except TimedOutException::\n'))
{noformat}

*Full build output*
{noformat}
[cassandra@cdaw-qa1 cql-1.0.0]$ sudo python setup.py install
[sudo] password for cassandra: 
running install
running build
running build_py
creating build
creating build/lib
creating build/lib/cql
copying cql/results.py -> build/lib/cql
copying cql/marshal.py -> build/lib/cql
copying cql/connection.py -> build/lib/cql
copying cql/cursor.py -> build/lib/cql
copying cql/decoders.py -> build/lib/cql
copying cql/__init__.py -> build/lib/cql
copying cql/errors.py -> build/lib/cql
copying cql/connection_pool.py -> build/lib/cql
creating build/lib/cql/cassandra
copying cql/cassandra/__init__.py -> build/lib/cql/cassandra
copying cql/cassandra/Cassandra.py -> build/lib/cql/cassandra
copying cql/cassandra/constants.py -> build/lib/cql/cassandra
copying cql/cassandra/ttypes.py -> build/lib/cql/cassandra
running build_scripts
creating build/scripts-2.6
copying and adjusting cqlsh -> build/scripts-2.6
changing mode of build/scripts-2.6/cqlsh from 644 to 755
running install_lib
copying build/lib/cql/cursor.py -> /usr/lib/python2.6/site-packages/cql
byte-compiling /usr/lib/python2.6/site-packages/cql/cursor.py to cursor.pyc
SyntaxError: ('invalid syntax', ('/usr/lib/python2.6/site-packages/cql/cursor.py', 139, 34, '        except TimedOutException::\n'))

running install_scripts
copying build/scripts-2.6/cqlsh -> /usr/bin
changing mode of /usr/bin/cqlsh to 755
running install_egg_info
Removing /usr/lib/python2.6/site-packages/cql-1.0.0-py2.6.egg-info
Writing /usr/lib/python2.6/site-packages/cql-1.0.0-py2.6.egg-info
{noformat})

> CQL: cqlsh error running batch update commands
> ----------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Eric Evans updated CASSANDRA-2545:
----------------------------------

    Attachment:     (was: v1-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt)

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Cathy Daw updated CASSANDRA-2545:
---------------------------------

    Description: 
*CQL Test Case*
{code}
//TEST CASE #1
BEGIN BATCH
UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
APPLY BATCH	

//TEST CASE #2
BEGIN BATCH USING CONSISTENCY ZERO
UPDATE users SET state = 'TX' WHERE KEY = 'user1';
UPDATE users SET state = 'TX' WHERE KEY = 'user2';
UPDATE users SET state = 'TX' WHERE KEY = 'user3';
APPLY BATCH	


//ERROR
Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
{code}

*Test Setup*
{code}
CREATE COLUMNFAMILY users (
  KEY varchar PRIMARY KEY,
  password varchar,
  gender varchar,
  session_token varchar,
  state varchar,
  birth_year bigint);

INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
{code}

*Documented Syntax*
{panel}
BEGIN BATCH [USING <CONSISTENCY>]
UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
APPLY BATCH
{panel}

  was:
*CQL Test Case*
{code}
//TEST CASE #1
BEGIN BATCH
UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
APPLY BATCH	

//TEST CASE #2
BEGIN BATCH USING CONSISTENCY ZERO
UPDATE users SET state = 'TX' WHERE KEY = 'user1';
UPDATE users SET state = 'TX' WHERE KEY = 'user2';
UPDATE users SET state = 'TX' WHERE KEY = 'user3';

//ERROR
Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY

APPLY BATCH	
{code}

*Test Setup*
{code}
CREATE COLUMNFAMILY users (
  KEY varchar PRIMARY KEY,
  password varchar,
  gender varchar,
  session_token varchar,
  state varchar,
  birth_year bigint);

INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
{code}

*Documented Syntax*
{panel}
BEGIN BATCH [USING <CONSISTENCY>]
UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
APPLY BATCH
{panel}


> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Eric Evans updated CASSANDRA-2545:
----------------------------------

    Attachment: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: Syntax error performing batch updates

Posted by "Jonathan Ellis (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13023490#comment-13023490 ] 

Jonathan Ellis commented on CASSANDRA-2545:
-------------------------------------------

i don't think "cqlsh requires commands to end with semicolon" is a bug

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v1-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: cqlsh error running batch update commands

Posted by "Hudson (JIRA)" <ji...@apache.org>.
    [ https://issues.apache.org/jira/browse/CASSANDRA-2545?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13025591#comment-13025591 ] 

Hudson commented on CASSANDRA-2545:
-----------------------------------

Integrated in Cassandra-0.8 #44 (See [https://builds.apache.org/hudson/job/Cassandra-0.8/44/])
    CASSANDRA-2545 also consider APPLY BATCH for terminating statements

Patch by eevans for CASSANDRA-2545


> CQL: cqlsh error running batch update commands
> ----------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>            Assignee: Eric Evans
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Commented] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Eric Evans commented on CASSANDRA-2545:
---------------------------------------

bq. i don't think "cqlsh requires commands to end with semicolon" is a bug

It's not; That's not the bug.

What's buggy is the way that a multi-line statement is parsed from the input.  The attached patch should take care of it.  It does not require the semi-colon for the individual UPDATE statements (APPLY BATCH is the terminator here), but using them won't hurt anything.

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v2-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira

[jira] [Updated] (CASSANDRA-2545) CQL: Syntax error performing batch updates

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

Eric Evans updated CASSANDRA-2545:
----------------------------------

    Attachment: v1-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt

> CQL: Syntax error performing batch updates
> ------------------------------------------
>
>                 Key: CASSANDRA-2545
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-2545
>             Project: Cassandra
>          Issue Type: Bug
>    Affects Versions: 0.8 beta 1
>            Reporter: Cathy Daw
>         Attachments: v1-0001-CASSANDRA-2545-also-consider-APPLY-BATCH-for-terminati.txt
>
>
> *CQL Test Case*
> {code}
> //TEST CASE #1
> BEGIN BATCH
> UPDATE users SET gender = 'm', birth_year = '1981' WHERE KEY = 'user1';
> UPDATE users SET gender = 'm', birth_year = '1982' WHERE KEY = 'user2';
> UPDATE users SET gender = 'm', birth_year = '1983' WHERE KEY = 'user3';
> APPLY BATCH	
> //TEST CASE #2
> BEGIN BATCH USING CONSISTENCY ZERO
> UPDATE users SET state = 'TX' WHERE KEY = 'user1';
> UPDATE users SET state = 'TX' WHERE KEY = 'user2';
> UPDATE users SET state = 'TX' WHERE KEY = 'user3';
> APPLY BATCH	
> //ERROR
> Bad Request: line 0:-1 mismatched input '<EOF>' expecting K_APPLY
> {code}
> *Test Setup*
> {code}
> CREATE COLUMNFAMILY users (
>   KEY varchar PRIMARY KEY,
>   password varchar,
>   gender varchar,
>   session_token varchar,
>   state varchar,
>   birth_year bigint);
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user1', 'ch@ngem3', 'f', 'CA', '1971');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user2', 'ch@ngem3', 'f', 'CA', '1972');
> INSERT INTO users (KEY, password, gender, state, birth_year) VALUES ('user3', 'ch@ngem3', 'f', 'CA', '1973');
> {code}
> *Documented Syntax*
> {panel}
> BEGIN BATCH [USING <CONSISTENCY>]
> UPDATE CF1 SET name1 = value1, name2 = value2 WHERE KEY = keyname1;
> UPDATE CF1 SET name3 = value3 WHERE KEY = keyname2;
> UPDATE CF2 SET name4 = value4, name5 = value5 WHERE KEY = keyname3;
> APPLY BATCH
> {panel}

--
This message is automatically generated by JIRA.
For more information on JIRA, see: http://www.atlassian.com/software/jira