This is an automated email from the ASF dual-hosted git repository.

ifesdjeen pushed a commit to branch cassandra-3.0
in repository https://gitbox.apache.org/repos/asf/cassandra.git

commit 880b07c2e63f6e1dea92995a1baa14707e3c2e5e
Merge: dd255ff 4fef917
Author: Alex Petrov <oleksandr.pet...@gmail.com>
AuthorDate: Fri Jun 5 19:25:27 2020 +0200

    Merge branch 'cassandra-2.2' into cassandra-3.0

 build.xml                                          |  2 +-
 .../org/apache/cassandra/distributed/Cluster.java  | 38 +++++++---------
 .../cassandra/distributed/UpgradeableCluster.java  | 33 +++++++-------
 .../distributed/impl/AbstractCluster.java          | 53 ++++++++++++++++++----
 .../cassandra/distributed/impl/Coordinator.java    | 33 ++++++--------
 .../impl/DelegatingInvokableInstance.java          |  6 +++
 .../cassandra/distributed/impl/Instance.java       | 10 ++--
 .../apache/cassandra/distributed/impl/RowUtil.java | 22 +++++++++
 .../cassandra/distributed/test/BootstrapTest.java  | 18 +++-----
 .../cassandra/distributed/test/TestBaseImpl.java   |  9 ++--
 .../distributed/upgrade/UpgradeTestBase.java       | 10 ++--
 11 files changed, 139 insertions(+), 95 deletions(-)

diff --cc 
test/distributed/org/apache/cassandra/distributed/impl/Coordinator.java
index e2ebef0,6553fb9..2f2b525
--- a/test/distributed/org/apache/cassandra/distributed/impl/Coordinator.java
+++ b/test/distributed/org/apache/cassandra/distributed/impl/Coordinator.java
@@@ -35,9 -36,13 +36,11 @@@ import org.apache.cassandra.distributed
  import org.apache.cassandra.distributed.api.ICoordinator;
  import org.apache.cassandra.distributed.api.IInstance;
  import org.apache.cassandra.distributed.api.QueryResult;
+ import org.apache.cassandra.distributed.api.QueryResults;
+ import org.apache.cassandra.distributed.api.SimpleQueryResult;
  import org.apache.cassandra.service.ClientState;
  import org.apache.cassandra.service.QueryState;
 -import org.apache.cassandra.service.pager.Pageable;
  import org.apache.cassandra.service.pager.QueryPager;
 -import org.apache.cassandra.service.pager.QueryPagers;
  import org.apache.cassandra.transport.Server;
  import org.apache.cassandra.tracing.Tracing;
  import org.apache.cassandra.transport.messages.ResultMessage;
@@@ -78,9 -83,9 +81,9 @@@ public class Coordinator implements ICo
          return 
org.apache.cassandra.db.ConsistencyLevel.fromCode(cl.ordinal());
      }
  
-     private QueryResult executeInternal(String query, ConsistencyLevel 
consistencyLevelOrigin, Object[] boundValues)
+     private SimpleQueryResult executeInternal(String query, ConsistencyLevel 
consistencyLevelOrigin, Object[] boundValues)
      {
 -        ClientState clientState = ClientState.forInternalCalls();
 +        ClientState clientState = makeFakeClientState();
          CQLStatement prepared = QueryProcessor.getStatement(query, 
clientState).statement;
          List<ByteBuffer> boundBBValues = new ArrayList<>();
          ConsistencyLevel consistencyLevel = 
ConsistencyLevel.valueOf(consistencyLevelOrigin.name());
@@@ -136,29 -130,32 +129,30 @@@
                  boundBBValues.add(ByteBufferUtil.objectToBytes(boundValue));
              }
  
 -            prepared.validate(QueryState.forInternalCalls().getClientState());
 +            prepared.validate(clientState);
              assert prepared instanceof SelectStatement : "Only SELECT 
statements can be executed with paging";
  
 -            ClientState clientState = 
QueryState.forInternalCalls().getClientState();
              SelectStatement selectStatement = (SelectStatement) prepared;
 -            QueryOptions queryOptions = 
QueryOptions.create(toCassandraCL(consistencyLevel),
 -                                                            boundBBValues,
 -                                                            false,
 -                                                            pageSize,
 -                                                            null,
 -                                                            null,
 -                                                            
Server.CURRENT_VERSION);
 -            Pageable pageable = 
selectStatement.getPageableCommand(queryOptions);
 +
 +            QueryPager pager = 
selectStatement.getQuery(QueryOptions.create(toCassandraCL(consistencyLevel),
 +                                                                            
boundBBValues,
 +                                                                            
false,
 +                                                                            
pageSize,
 +                                                                            
null,
 +                                                                            
null,
 +                                                                            
Server.CURRENT_VERSION),
 +                                                        
FBUtilities.nowInSeconds())
-                                      .getPager(null, Server.CURRENT_VERSION);
++                                              .getPager(null, 
Server.CURRENT_VERSION);
  
              // Usually pager fetches a single page (see 
SelectStatement#execute). We need to iterate over all
              // of the results lazily.
-             return new Iterator<Object[]>() {
-                 Iterator<Object[]> iter = 
RowUtil.toObjects(UntypedResultSet.create(selectStatement, 
toCassandraCL(consistencyLevel), clientState, pager,  pageSize));
 -            QueryPager pager = QueryPagers.pager(pageable, 
toCassandraCL(consistencyLevel), clientState, null);
 -            Iterator<Object[]> iter = 
RowUtil.toObjects(selectStatement.getResultMetadata().names,
 -                                                        
UntypedResultSet.create(selectStatement,
 -                                                                              
  pager,
 -                                                                              
  pageSize).iterator());
 -
 -            // We have to make sure iterator is not running on main thread.
 -            Iterator<Object[]> it =  new Iterator<Object[]>() {
++            UntypedResultSet rs = UntypedResultSet.create(selectStatement, 
toCassandraCL(consistencyLevel), clientState, pager, pageSize);
++            Iterator<Object[]> it = new Iterator<Object[]>() {
++                Iterator<Object[]> iter = RowUtil.toObjects(rs);
 +
                  public boolean hasNext()
                  {
 +                    // We have to make sure iterator is not running on main 
thread.
                      return instance.sync(() -> iter.hasNext()).call();
                  }
  
@@@ -167,6 -164,7 +161,7 @@@
                      return instance.sync(() -> iter.next()).call();
                  }
              };
 -            return 
QueryResults.fromObjectArrayIterator(RowUtil.getColumnNames(selectStatement.getResultMetadata().names),
 it);
++            return 
QueryResults.fromObjectArrayIterator(RowUtil.getColumnNames(rs.metadata()), it);
          }).call();
      }
  
diff --cc 
test/distributed/org/apache/cassandra/distributed/upgrade/UpgradeTestBase.java
index 8de3e4c,d540442..4f0c700
--- 
a/test/distributed/org/apache/cassandra/distributed/upgrade/UpgradeTestBase.java
+++ 
b/test/distributed/org/apache/cassandra/distributed/upgrade/UpgradeTestBase.java
@@@ -30,16 -30,13 +30,14 @@@ import org.junit.BeforeClass
  
  import org.apache.cassandra.distributed.UpgradeableCluster;
  import org.apache.cassandra.distributed.api.ICluster;
- import org.apache.cassandra.distributed.api.IInstance;
  import org.apache.cassandra.distributed.api.IInstanceConfig;
 +import org.apache.cassandra.distributed.api.IUpgradeableInstance;
  import org.apache.cassandra.distributed.impl.Instance;
- import org.apache.cassandra.distributed.impl.InstanceConfig;
- import org.apache.cassandra.distributed.shared.Builder;
  import org.apache.cassandra.distributed.shared.DistributedTestBase;
  import org.apache.cassandra.distributed.shared.Versions;
- import static org.apache.cassandra.distributed.shared.Versions.Version;
+ 
  import static org.apache.cassandra.distributed.shared.Versions.Major;
+ import static org.apache.cassandra.distributed.shared.Versions.Version;
  import static org.apache.cassandra.distributed.shared.Versions.find;
  
  public class UpgradeTestBase extends DistributedTestBase


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscr...@cassandra.apache.org
For additional commands, e-mail: commits-h...@cassandra.apache.org

Reply via email to