diff --git a/src/sorterscroll.cpp b/src/sorterscroll.cpp index 4b4f56a5c3..fc8f696cfa 100644 --- a/src/sorterscroll.cpp +++ b/src/sorterscroll.cpp @@ -122,8 +122,10 @@ void ScrollSorter_T::SetupRefMatch() const ISphSchema * pSchema = m_pSorter->GetSchema(); assert(pSchema); + // Free old data pointer attributes before resetting FreeDataPtrAttrs(); - m_tRefMatch.Reset ( pSchema->GetRowSize() ); + + m_tRefMatch.Reset ( pSchema->GetDynamicSize() ); m_dStatic.Resize ( pSchema->GetStaticSize() ); m_tRefMatch.m_pStatic = m_dStatic.Begin(); @@ -137,11 +139,30 @@ void ScrollSorter_T::SetupRefMatch() } auto pAttr = pSchema->GetAttr ( i.m_sSortAttr.cstr() ); + if ( !pAttr ) + continue; + + // If the scroll token has a string type and the schema attribute is SPH_ATTR_STRING, + // use the remapped STRINGPTR version (used for sorting) + if ( i.m_eType==SPH_ATTR_STRINGPTR && pAttr->m_eAttrType==SPH_ATTR_STRING ) + { + CSphString sRemappedName; + sRemappedName.SetSprintf ( "@int_attr_%s", i.m_sSortAttr.cstr() ); + auto pRemapped = pSchema->GetAttr ( sRemappedName.cstr() ); + if ( pRemapped && pRemapped->m_eAttrType==SPH_ATTR_STRINGPTR ) + pAttr = pRemapped; + } + auto pRowData = pAttr->m_tLocator.m_bDynamic ? m_tRefMatch.m_pDynamic : m_dStatic.Begin(); switch ( i.m_eType ) { case SPH_ATTR_STRINGPTR: - sphSetRowAttr ( pRowData, pAttr->m_tLocator, (SphAttr_t)sphPackPtrAttr ( { (const BYTE*)i.m_sValue.cstr(), i.m_sValue.Length() } ) ); + // After remapping, pAttr should be SPH_ATTR_STRINGPTR, but check to be safe + if ( pAttr->m_eAttrType==SPH_ATTR_STRINGPTR ) + { + BYTE * pPacked = sphPackPtrAttr ( { (const BYTE*)i.m_sValue.cstr(), i.m_sValue.Length() } ); + sphSetRowAttr ( pRowData, pAttr->m_tLocator, (SphAttr_t)pPacked ); + } break; case SPH_ATTR_FLOAT: @@ -164,18 +185,29 @@ void ScrollSorter_T::FreeDataPtrAttrs() const ISphSchema * pSchema = m_pSorter->GetSchema(); assert(pSchema); - for ( auto & i : m_tScroll.m_dAttrs ) + for ( const auto & i : m_tScroll.m_dAttrs ) { - if ( i.m_sSortAttr=="weight()" ) + if ( i.m_sSortAttr=="weight()" || !sphIsDataPtrAttr(i.m_eType) ) continue; - const CSphColumnInfo * pAttr = pSchema->GetAttr ( i.m_sSortAttr.cstr() ); - assert(pAttr); - if ( sphIsDataPtrAttr ( pAttr->m_eAttrType ) ) + auto pAttr = pSchema->GetAttr ( i.m_sSortAttr.cstr() ); + if ( !pAttr ) + continue; + + // If the scroll token has a string type and the schema attribute is SPH_ATTR_STRING, + // use the remapped STRINGPTR version (used for sorting) + if ( i.m_eType==SPH_ATTR_STRINGPTR && pAttr->m_eAttrType==SPH_ATTR_STRING ) { - auto pData = (BYTE *)m_tRefMatch.GetAttr ( pAttr->m_tLocator ); - sphDeallocatePacked(pData); + CSphString sRemappedName; + sRemappedName.SetSprintf ( "@int_attr_%s", i.m_sSortAttr.cstr() ); + auto pRemapped = pSchema->GetAttr ( sRemappedName.cstr() ); + if ( pRemapped && pRemapped->m_eAttrType==SPH_ATTR_STRINGPTR ) + pAttr = pRemapped; } + + auto pData = (BYTE *)m_tRefMatch.GetAttr ( pAttr->m_tLocator ); + if ( pData ) + sphDeallocatePacked(pData); } } @@ -218,9 +250,22 @@ static bool CanCreateScrollSorter ( bool bMulti, const ISphSchema & tSchema, con if ( !pAttr ) return false; + ESphAttr eCheckType = pAttr->m_eAttrType; + + // If the scroll token has a string type and the schema attribute is SPH_ATTR_STRING, + // check if there's a remapped STRINGPTR version (used for sorting) + if ( i.m_eType==SPH_ATTR_STRINGPTR && eCheckType==SPH_ATTR_STRING ) + { + CSphString sRemappedName; + sRemappedName.SetSprintf ( "@int_attr_%s", i.m_sSortAttr.cstr() ); + auto pRemapped = tSchema.GetAttr ( sRemappedName.cstr() ); + if ( pRemapped && pRemapped->m_eAttrType==SPH_ATTR_STRINGPTR ) + eCheckType = SPH_ATTR_STRINGPTR; + } + bool bSupported = false; for ( auto eType : dSupportedTypes ) - if ( pAttr->m_eAttrType==eType ) + if ( eCheckType==eType ) { bSupported = true; break; diff --git a/test/test_307/model.bin b/test/test_307/model.bin index aae6b73c39..e59669cfc3 100644 --- a/test/test_307/model.bin +++ b/test/test_307/model.bin @@ -1 +1 @@ -a:1:{i:0;a:40:{i:0;a:2:{s:8:"sphinxql";s:30:"create table t1(f text, a int)";s:14:"total_affected";i:0;}i:1;a:2:{s:8:"sphinxql";s:80:"insert into t1 values(1, 'a', 1),(2, 'b', 1),(3, 'a', 2),(4, 'a', 3),(5, 'a', 5)";s:14:"total_affected";i:5;}i:2;a:2:{s:8:"sphinxql";s:30:"create table t2(f text, a int)";s:14:"total_affected";i:0;}i:3;a:2:{s:8:"sphinxql";s:81:"insert into t2 values(6, 'a', 1),(7, 'b', 1),(8, 'a', 2),(9, 'a', 3),(10, 'a', 5)";s:14:"total_affected";i:5;}i:4;a:2:{s:8:"sphinxql";s:91:"create table d type='distributed' agent=':t1' agent=':t2'";s:14:"total_affected";i:0;}i:5;a:3:{s:8:"sphinxql";s:47:"select * from d order by a asc, id desc limit 5";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"7";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"6";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"2";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"1";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"8";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}}}i:6;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:192:"eyJvcmRlcl9ieV9zdHIiOiJhIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoiYSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjgsInR5cGUiOiJpbnQifV19";}}}i:7;a:3:{s:8:"sphinxql";s:256:"select * from d order by a asc, id desc limit 5 option scroll='eyJvcmRlcl9ieV9zdHIiOiJhIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoiYSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjgsInR5cGUiOiJpbnQifV19'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}i:1;a:3:{s:2:"id";s:1:"9";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}i:2;a:3:{s:2:"id";s:1:"4";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}i:3;a:3:{s:2:"id";s:2:"10";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}i:4;a:3:{s:2:"id";s:1:"5";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}}}i:8;a:3:{s:8:"sphinxql";s:40:"select * from d order by id desc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:2:"10";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}i:1;a:3:{s:2:"id";s:1:"9";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}}}i:9;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:120:"eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo5LCJ0eXBlIjoiaW50In1dfQ==";}}}i:10;a:3:{s:8:"sphinxql";s:160:"select * from d limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo5LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:1:"8";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}i:1;a:3:{s:2:"id";s:1:"7";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}}}i:11;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:120:"eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ==";}}}i:12;a:3:{s:8:"sphinxql";s:160:"select * from d limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:1:"6";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"5";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}}}i:13;a:2:{s:8:"sphinxql";s:12:"drop table d";s:14:"total_affected";i:0;}i:14;a:2:{s:8:"sphinxql";s:13:"drop table t1";s:14:"total_affected";i:0;}i:15;a:2:{s:8:"sphinxql";s:13:"drop table t2";s:14:"total_affected";i:0;}i:16;a:2:{s:8:"sphinxql";s:14:"create table t";s:14:"total_affected";i:0;}i:17;a:3:{s:8:"sphinxql";s:35:"select * from t option scroll = '!'";s:5:"errno";i:1064;s:5:"error";s:26:"unable to decode BASE64: !";}i:18;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:19;a:2:{s:8:"sphinxql";s:33:"create table test ( name string )";s:14:"total_affected";i:0;}i:20;a:2:{s:8:"sphinxql";s:112:"insert into test (id, name) values (1, 'A'), (2, 'B'), (3, 'C'), (4, 'D'), (11453019889550859933, 'E'), (5, 'F')";s:14:"total_affected";i:6;}i:21;a:3:{s:8:"sphinxql";s:53:"select * from test order by name asc, id desc limit 5";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:2:{s:2:"id";s:1:"1";s:4:"name";s:1:"A";}i:1;a:2:{s:2:"id";s:1:"2";s:4:"name";s:1:"B";}i:2;a:2:{s:2:"id";s:1:"3";s:4:"name";s:1:"C";}i:3;a:2:{s:2:"id";s:1:"4";s:4:"name";s:1:"D";}i:4;a:2:{s:2:"id";s:20:"-6993724184158691683";s:4:"name";s:1:"E";}}}i:22;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:232:"eyJvcmRlcl9ieV9zdHIiOiJuYW1lIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoibmFtZSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTE0NTMwMTk4ODk1NTA4NTk5MzMsInR5cGUiOiJpbnQifV19";}}}i:23;a:3:{s:8:"sphinxql";s:302:"select * from test order by name asc, id desc limit 5 option scroll='eyJvcmRlcl9ieV9zdHIiOiJuYW1lIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoibmFtZSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTE0NTMwMTk4ODk1NTA4NTk5MzMsInR5cGUiOiJpbnQifV19'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:2:{s:2:"id";s:1:"1";s:4:"name";s:1:"A";}i:1;a:2:{s:2:"id";s:1:"2";s:4:"name";s:1:"B";}i:2;a:2:{s:2:"id";s:1:"3";s:4:"name";s:1:"C";}i:3;a:2:{s:2:"id";s:1:"4";s:4:"name";s:1:"D";}i:4;a:2:{s:2:"id";s:20:"-6993724184158691683";s:4:"name";s:1:"E";}}}i:24;a:2:{s:8:"sphinxql";s:15:"drop table test";s:14:"total_affected";i:0;}i:25;a:2:{s:8:"sphinxql";s:29:"drop table if exists test_log";s:14:"total_affected";i:0;}i:26;a:2:{s:8:"sphinxql";s:65:"create table test_log (id bigint,req_time TIMESTAMP,sp_id string)";s:14:"total_affected";i:0;}i:27;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677442, 1751422494, '200002')";s:14:"total_affected";i:1;}i:28;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677443, 1751422495, '200002')";s:14:"total_affected";i:1;}i:29;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677444, 1751422496, '200002')";s:14:"total_affected";i:1;}i:30;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677445, 1751422497, '200002')";s:14:"total_affected";i:1;}i:31;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677441, 1751422498, '200002')";s:14:"total_affected";i:1;}i:32;a:3:{s:8:"sphinxql";s:116:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:1:{s:2:"id";s:19:"5767972917807677441";}i:1;a:1:{s:2:"id";s:19:"5767972917807677442";}}}i:33;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQyLCJ0eXBlIjoiaW50In1dfQ==";}}}i:34;a:3:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQyLCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:1:{s:2:"id";s:19:"5767972917807677443";}i:1;a:1:{s:2:"id";s:19:"5767972917807677444";}}}i:35;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ0LCJ0eXBlIjoiaW50In1dfQ==";}}}i:36;a:3:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ0LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:2:"id";s:19:"5767972917807677445";}}}i:37;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ1LCJ0eXBlIjoiaW50In1dfQ==";}}}i:38;a:2:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ1LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:0;}i:39;a:2:{s:8:"sphinxql";s:19:"drop table test_log";s:14:"total_affected";i:0;}}} \ No newline at end of file +a:1:{i:0;a:40:{i:0;a:2:{s:8:"sphinxql";s:30:"create table t1(f text, a int)";s:14:"total_affected";i:0;}i:1;a:2:{s:8:"sphinxql";s:80:"insert into t1 values(1, 'a', 1),(2, 'b', 1),(3, 'a', 2),(4, 'a', 3),(5, 'a', 5)";s:14:"total_affected";i:5;}i:2;a:2:{s:8:"sphinxql";s:30:"create table t2(f text, a int)";s:14:"total_affected";i:0;}i:3;a:2:{s:8:"sphinxql";s:81:"insert into t2 values(6, 'a', 1),(7, 'b', 1),(8, 'a', 2),(9, 'a', 3),(10, 'a', 5)";s:14:"total_affected";i:5;}i:4;a:2:{s:8:"sphinxql";s:91:"create table d type='distributed' agent=':t1' agent=':t2'";s:14:"total_affected";i:0;}i:5;a:3:{s:8:"sphinxql";s:47:"select * from d order by a asc, id desc limit 5";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"7";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"6";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:2;a:3:{s:2:"id";s:1:"2";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}i:3;a:3:{s:2:"id";s:1:"1";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:4;a:3:{s:2:"id";s:1:"8";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}}}i:6;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:192:"eyJvcmRlcl9ieV9zdHIiOiJhIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoiYSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjgsInR5cGUiOiJpbnQifV19";}}}i:7;a:3:{s:8:"sphinxql";s:256:"select * from d order by a asc, id desc limit 5 option scroll='eyJvcmRlcl9ieV9zdHIiOiJhIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoiYSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjgsInR5cGUiOiJpbnQifV19'";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:3:{s:2:"id";s:1:"3";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}i:1;a:3:{s:2:"id";s:1:"9";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}i:2;a:3:{s:2:"id";s:1:"4";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}i:3;a:3:{s:2:"id";s:2:"10";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}i:4;a:3:{s:2:"id";s:1:"5";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}}}i:8;a:3:{s:8:"sphinxql";s:40:"select * from d order by id desc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:2:"10";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}i:1;a:3:{s:2:"id";s:1:"9";s:1:"f";s:1:"a";s:1:"a";s:1:"3";}}}i:9;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:120:"eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo5LCJ0eXBlIjoiaW50In1dfQ==";}}}i:10;a:3:{s:8:"sphinxql";s:160:"select * from d limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo5LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:1:"8";s:1:"f";s:1:"a";s:1:"a";s:1:"2";}i:1;a:3:{s:2:"id";s:1:"7";s:1:"f";s:1:"b";s:1:"a";s:1:"1";}}}i:11;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:120:"eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ==";}}}i:12;a:3:{s:8:"sphinxql";s:160:"select * from d limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBkZXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJpZCIsImRlc2MiOnRydWUsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:3:{s:2:"id";s:1:"6";s:1:"f";s:1:"a";s:1:"a";s:1:"1";}i:1;a:3:{s:2:"id";s:1:"5";s:1:"f";s:1:"a";s:1:"a";s:1:"5";}}}i:13;a:2:{s:8:"sphinxql";s:12:"drop table d";s:14:"total_affected";i:0;}i:14;a:2:{s:8:"sphinxql";s:13:"drop table t1";s:14:"total_affected";i:0;}i:15;a:2:{s:8:"sphinxql";s:13:"drop table t2";s:14:"total_affected";i:0;}i:16;a:2:{s:8:"sphinxql";s:14:"create table t";s:14:"total_affected";i:0;}i:17;a:3:{s:8:"sphinxql";s:35:"select * from t option scroll = '!'";s:5:"errno";i:1064;s:5:"error";s:26:"unable to decode BASE64: !";}i:18;a:2:{s:8:"sphinxql";s:12:"drop table t";s:14:"total_affected";i:0;}i:19;a:2:{s:8:"sphinxql";s:33:"create table test ( name string )";s:14:"total_affected";i:0;}i:20;a:2:{s:8:"sphinxql";s:112:"insert into test (id, name) values (1, 'A'), (2, 'B'), (3, 'C'), (4, 'D'), (11453019889550859933, 'E'), (5, 'F')";s:14:"total_affected";i:6;}i:21;a:3:{s:8:"sphinxql";s:53:"select * from test order by name asc, id desc limit 5";s:10:"total_rows";i:5;s:4:"rows";a:5:{i:0;a:2:{s:2:"id";s:1:"1";s:4:"name";s:1:"A";}i:1;a:2:{s:2:"id";s:1:"2";s:4:"name";s:1:"B";}i:2;a:2:{s:2:"id";s:1:"3";s:4:"name";s:1:"C";}i:3;a:2:{s:2:"id";s:1:"4";s:4:"name";s:1:"D";}i:4;a:2:{s:2:"id";s:20:"-6993724184158691683";s:4:"name";s:1:"E";}}}i:22;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:232:"eyJvcmRlcl9ieV9zdHIiOiJuYW1lIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoibmFtZSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTE0NTMwMTk4ODk1NTA4NTk5MzMsInR5cGUiOiJpbnQifV19";}}}i:23;a:3:{s:8:"sphinxql";s:302:"select * from test order by name asc, id desc limit 5 option scroll='eyJvcmRlcl9ieV9zdHIiOiJuYW1lIGFzYywgaWQgZGVzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoibmFtZSIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTE0NTMwMTk4ODk1NTA4NTk5MzMsInR5cGUiOiJpbnQifV19'";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:2:"id";s:1:"5";s:4:"name";s:1:"F";}}}i:24;a:2:{s:8:"sphinxql";s:15:"drop table test";s:14:"total_affected";i:0;}i:25;a:2:{s:8:"sphinxql";s:29:"drop table if exists test_log";s:14:"total_affected";i:0;}i:26;a:2:{s:8:"sphinxql";s:65:"create table test_log (id bigint,req_time TIMESTAMP,sp_id string)";s:14:"total_affected";i:0;}i:27;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677442, 1751422494, '200002')";s:14:"total_affected";i:1;}i:28;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677443, 1751422495, '200002')";s:14:"total_affected";i:1;}i:29;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677444, 1751422496, '200002')";s:14:"total_affected";i:1;}i:30;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677445, 1751422497, '200002')";s:14:"total_affected";i:1;}i:31;a:2:{s:8:"sphinxql";s:71:"insert into test_log values (5767972917807677441, 1751422498, '200002')";s:14:"total_affected";i:1;}i:32;a:3:{s:8:"sphinxql";s:116:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:1:{s:2:"id";s:19:"5767972917807677441";}i:1;a:1:{s:2:"id";s:19:"5767972917807677442";}}}i:33;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQyLCJ0eXBlIjoiaW50In1dfQ==";}}}i:34;a:3:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQyLCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:1:{s:2:"id";s:19:"5767972917807677443";}i:1;a:1:{s:2:"id";s:19:"5767972917807677444";}}}i:35;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ0LCJ0eXBlIjoiaW50In1dfQ==";}}}i:36;a:3:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ0LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:2:"id";s:19:"5767972917807677445";}}}i:37;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:144:"eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ1LCJ0eXBlIjoiaW50In1dfQ==";}}}i:38;a:2:{s:8:"sphinxql";s:277:"select id from test_log where sp_id='200002' and req_time>1751299200 and req_time<1753977600 order by id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1NzY3OTcyOTE3ODA3Njc3NDQ1LCJ0eXBlIjoiaW50In1dfQ=='";s:10:"total_rows";i:0;}i:39;a:2:{s:8:"sphinxql";s:19:"drop table test_log";s:14:"total_affected";i:0;}}} \ No newline at end of file diff --git a/test/test_308/model.bin b/test/test_308/model.bin index eb32a37f13..5426b489a3 100644 --- a/test/test_308/model.bin +++ b/test/test_308/model.bin @@ -1,4 +1,4 @@ -a:1:{i:0;a:12:{i:0;a:3:{s:8:"sphinxql";s:96:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"2";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"3";}}}i:1;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MywidHlwZSI6ImludCJ9XX0=";}}}i:2;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MywidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"4";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"5";}}}i:3;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NSwidHlwZSI6ImludCJ9XX0=";}}}i:4;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NSwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"6";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"7";}}}i:5;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0=";}}}i:6;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"8";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"9";}}}i:7;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0=";}}}i:8;a:3:{s:8:"sphinxql";s:298:"select weight(), id from test where match('the') and id>1 limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:2:"10";}}}i:9;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:275:"{ +a:1:{i:0;a:26:{i:0;a:3:{s:8:"sphinxql";s:96:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"2";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"3";}}}i:1;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MywidHlwZSI6ImludCJ9XX0=";}}}i:2;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MywidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"4";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"5";}}}i:3;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NSwidHlwZSI6ImludCJ9XX0=";}}}i:4;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NSwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"6";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"7";}}}i:5;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0=";}}}i:6;a:3:{s:8:"sphinxql";s:329:"select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"8";}i:1;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:1:"9";}}}i:7;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:216:"eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0=";}}}i:8;a:3:{s:8:"sphinxql";s:298:"select weight(), id from test where match('the') and id>1 limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:2:{s:8:"weight()";s:4:"1281";s:2:"id";s:2:"10";}}}i:9;a:3:{s:8:"sphinxql";s:73:"select id, brand_name from test order by brand_name desc, id desc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:2:"10";s:10:"brand_name";s:1:"E";}i:1;a:2:{s:2:"id";s:1:"9";s:10:"brand_name";s:1:"E";}}}i:10;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:224:"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0=";}}}i:11;a:3:{s:8:"sphinxql";s:314:"select id, brand_name from test order by brand_name desc, id desc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:1:"8";s:10:"brand_name";s:1:"D";}i:1;a:2:{s:2:"id";s:1:"7";s:10:"brand_name";s:1:"D";}}}i:12;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:224:"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkQiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0=";}}}i:13;a:3:{s:8:"sphinxql";s:315:"select id, brand_name from test order by brand_name desc, id desc limit 20 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkQiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:6;s:4:"rows";a:6:{i:0;a:2:{s:2:"id";s:1:"6";s:10:"brand_name";s:1:"C";}i:1;a:2:{s:2:"id";s:1:"5";s:10:"brand_name";s:1:"C";}i:2;a:2:{s:2:"id";s:1:"4";s:10:"brand_name";s:1:"B";}i:3;a:2:{s:2:"id";s:1:"3";s:10:"brand_name";s:1:"B";}i:4;a:2:{s:2:"id";s:1:"2";s:10:"brand_name";s:1:"A";}i:5;a:2:{s:2:"id";s:1:"1";s:10:"brand_name";s:1:"A";}}}i:14;a:3:{s:8:"sphinxql";s:71:"select id, brand_name from test order by brand_name asc, id asc limit 2";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:1:"1";s:10:"brand_name";s:1:"A";}i:1;a:2:{s:2:"id";s:1:"2";s:10:"brand_name";s:1:"A";}}}i:15;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:224:"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0=";}}}i:16;a:3:{s:8:"sphinxql";s:312:"select id, brand_name from test order by brand_name asc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:2;s:4:"rows";a:2:{i:0;a:2:{s:2:"id";s:1:"3";s:10:"brand_name";s:1:"B";}i:1;a:2:{s:2:"id";s:1:"4";s:10:"brand_name";s:1:"B";}}}i:17;a:3:{s:8:"sphinxql";s:11:"show scroll";s:10:"total_rows";i:1;s:4:"rows";a:1:{i:0;a:1:{s:12:"scroll_token";s:224:"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQiIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NCwidHlwZSI6ImludCJ9XX0=";}}}i:18;a:3:{s:8:"sphinxql";s:312:"select id, brand_name from test order by brand_name asc, id asc limit 3 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQiIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NCwidHlwZSI6ImludCJ9XX0='";s:10:"total_rows";i:3;s:4:"rows";a:3:{i:0;a:2:{s:2:"id";s:1:"5";s:10:"brand_name";s:1:"C";}i:1;a:2:{s:2:"id";s:1:"6";s:10:"brand_name";s:1:"C";}i:2;a:2:{s:2:"id";s:1:"7";s:10:"brand_name";s:1:"D";}}}i:19;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:275:"{ "index": "test", "options": { @@ -19,7 +19,7 @@ a:1:{i:0;a:12:{i:0;a:3:{s:8:"sphinxql";s:96:"select weight(), id from test where ], "track_scores": true, "limit":2 -}";s:4:"rows";s:476:"{"timed_out":false,"hits":{"total":9,"total_relation":"eq","hits":[{"_id":2,"_score":1281,"_source":{"title":"the idftest2","gid":123,"title_len":2}},{"_id":3,"_score":1281,"_source":{"title":"the idftest2 and idftest1","gid":123,"title_len":4}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjozLCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:10;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:489:"{ +}";s:4:"rows";s:510:"{"timed_out":false,"hits":{"total":9,"total_relation":"eq","hits":[{"_id":2,"_score":1281,"_source":{"title":"the idftest2","gid":123,"brand_name":"A","title_len":2}},{"_id":3,"_score":1281,"_source":{"title":"the idftest2 and idftest1","gid":123,"brand_name":"B","title_len":4}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjozLCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:20;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:489:"{ "index": "test", "options": { @@ -40,7 +40,7 @@ a:1:{i:0;a:12:{i:0;a:3:{s:8:"sphinxql";s:96:"select weight(), id from test where ], "track_scores": true, "limit":2 -}";s:4:"rows";s:445:"{"timed_out":false,"hits":{"total":7,"total_relation":"eq","hits":[{"_id":4,"_score":1281,"_source":{"title":"the","gid":123,"title_len":1}},{"_id":5,"_score":1281,"_source":{"title":"the","gid":123,"title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1LCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:11;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:407:"{ +}";s:4:"rows";s:479:"{"timed_out":false,"hits":{"total":7,"total_relation":"eq","hits":[{"_id":4,"_score":1281,"_source":{"title":"the","gid":123,"brand_name":"B","title_len":1}},{"_id":5,"_score":1281,"_source":{"title":"the","gid":123,"brand_name":"C","title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo1LCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:21;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:407:"{ "index": "test", "options": { @@ -56,4 +56,52 @@ a:1:{i:0;a:12:{i:0;a:3:{s:8:"sphinxql";s:96:"select weight(), id from test where }, "track_scores": true, "limit":2 -}";s:4:"rows";s:445:"{"timed_out":false,"hits":{"total":5,"total_relation":"eq","hits":[{"_id":6,"_score":1281,"_source":{"title":"the","gid":123,"title_len":1}},{"_id":7,"_score":1281,"_source":{"title":"the","gid":123,"title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}}} \ No newline at end of file +}";s:4:"rows";s:479:"{"timed_out":false,"hits":{"total":5,"total_relation":"eq","hits":[{"_id":6,"_score":1281,"_source":{"title":"the","gid":123,"brand_name":"C","title_len":1}},{"_id":7,"_score":1281,"_source":{"title":"the","gid":123,"brand_name":"D","title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJAd2VpZ2h0IGRlc2MsIGlkIGFzYyIsIm9yZGVyX2J5IjpbeyJhdHRyIjoid2VpZ2h0KCkiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6MTI4MSwidHlwZSI6ImludCJ9LHsiYXR0ciI6ImlkIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjo3LCJ0eXBlIjoiaW50In1dfQ=="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:22;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:160:"{ + "index": "test", + "options": + { + "scroll": true + }, + "sort": + [ + { "brand_name":{ "order":"desc"} }, + { "id":{ "order":"desc"} } + ], + "limit":2 +}";s:4:"rows";s:483:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":10,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"E","title_len":1}},{"_id":9,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"E","title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:23;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:382:"{ + "index": "test", + "options": + { + "scroll": "eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0=" + }, + "sort": + [ + { "brand_name":{ "order":"desc"} }, + { "id":{ "order":"desc"} } + ], + "limit":2 +}";s:4:"rows";s:481:"{"timed_out":false,"hits":{"total":8,"total_relation":"eq","hits":[{"_id":8,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"D","title_len":1}},{"_id":7,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"D","title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkQiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:24;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:158:"{ + "index": "test", + "options": + { + "scroll": true + }, + "sort": + [ + { "brand_name":{ "order":"asc"} }, + { "id":{ "order":"asc"} } + ], + "limit":2 +}";s:4:"rows";s:540:"{"timed_out":false,"hits":{"total":10,"total_relation":"eq","hits":[{"_id":1,"_score":1,"_source":{"title":"THE document collection. Aiming for exactly 10 docs.","gid":123,"brand_name":"A","title_len":8}},{"_id":2,"_score":1,"_source":{"title":"the idftest2","gid":123,"brand_name":"A","title_len":2}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0="}";s:9:"http_code";i:200;s:4:"http";i:1;}i:25;a:6:{s:13:"http_endpoint";s:11:"json/search";s:11:"http_method";s:4:"POST";s:12:"http_request";s:380:"{ + "index": "test", + "options": + { + "scroll": "eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0=" + }, + "sort": + [ + { "brand_name":{ "order":"asc"} }, + { "id":{ "order":"asc"} } + ], + "limit":3 +}";s:4:"rows";s:591:"{"timed_out":false,"hits":{"total":8,"total_relation":"eq","hits":[{"_id":3,"_score":1,"_source":{"title":"the idftest2 and idftest1","gid":123,"brand_name":"B","title_len":4}},{"_id":4,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"B","title_len":1}},{"_id":5,"_score":1,"_source":{"title":"the","gid":123,"brand_name":"C","title_len":1}}]},"scroll":"eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQyIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NSwidHlwZSI6ImludCJ9XX0="}";s:9:"http_code";i:200;s:4:"http";i:1;}}} \ No newline at end of file diff --git a/test/test_308/test.xml b/test/test_308/test.xml index fe18ac6526..e212c99e2a 100644 --- a/test/test_308/test.xml +++ b/test/test_308/test.xml @@ -24,6 +24,7 @@ source test sql_query = select * from test_table sql_attr_uint = gid + sql_attr_string = brand_name } index test @@ -39,21 +40,22 @@ CREATE TABLE test_table ( id INTEGER PRIMARY KEY NOT NULL, gid INTEGER NOT NULL, - title VARCHAR(255) NOT NULL + title VARCHAR(255) NOT NULL, + brand_name VARCHAR(255) NOT NULL ); DROP TABLE IF EXISTS test_table; INSERT INTO test_table VALUES -( 1, 123, 'THE document collection. Aiming for exactly 10 docs.' ), -( 2, 123, 'the idftest2' ), -( 3, 123, 'the idftest2 and idftest1' ), -( 4, 123, 'the' ), -( 5, 123, 'the' ), -( 6, 123, 'the' ), -( 7, 123, 'the' ), -( 8, 123, 'the' ), -( 9, 123, 'the' ), -( 10, 123, 'the' ) +( 1, 123, 'THE document collection. Aiming for exactly 10 docs.', 'A' ), +( 2, 123, 'the idftest2', 'A' ), +( 3, 123, 'the idftest2 and idftest1', 'B' ), +( 4, 123, 'the', 'B' ), +( 5, 123, 'the', 'C' ), +( 6, 123, 'the', 'C' ), +( 7, 123, 'the', 'D' ), +( 8, 123, 'the', 'D' ), +( 9, 123, 'the', 'E' ), +( 10, 123, 'the', 'E' ) @@ -67,6 +69,20 @@ show scroll; select weight(), id from test where match('the') and id>1 order by weight() desc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0='; show scroll; select weight(), id from test where match('the') and id>1 limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJ3ZWlnaHQoKSBkZXNjLCBpZCBhc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6IndlaWdodCgpIiwiZGVzYyI6dHJ1ZSwidmFsdWUiOjEyODEsInR5cGUiOiJpbnQifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0='; + + +select id, brand_name from test order by brand_name desc, id desc limit 2; +show scroll; +select id, brand_name from test order by brand_name desc, id desc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0='; +show scroll; +select id, brand_name from test order by brand_name desc, id desc limit 20 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkQiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6NywidHlwZSI6ImludCJ9XX0='; + + +select id, brand_name from test order by brand_name asc, id asc limit 2; +show scroll; +select id, brand_name from test order by brand_name asc, id asc limit 2 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0='; +show scroll; +select id, brand_name from test order by brand_name asc, id asc limit 3 option scroll='eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQiIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6NCwidHlwZSI6ImludCJ9XX0='; @@ -139,6 +155,67 @@ select weight(), id from test where match('the') and id>1 limit 2 option scroll= } + +{ + "index": "test", + "options": + { + "scroll": true + }, + "sort": + [ + { "brand_name":{ "order":"desc"} }, + { "id":{ "order":"desc"} } + ], + "limit":2 +} + + +{ + "index": "test", + "options": + { + "scroll": "eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGRlc2MsIGlkIGRlc2MiLCJvcmRlcl9ieSI6W3siYXR0ciI6ImJyYW5kX25hbWUiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6IkUiLCJ0eXBlIjoic3RyaW5nIn0seyJhdHRyIjoiaWQiLCJkZXNjIjp0cnVlLCJ2YWx1ZSI6OSwidHlwZSI6ImludCJ9XX0=" + }, + "sort": + [ + { "brand_name":{ "order":"desc"} }, + { "id":{ "order":"desc"} } + ], + "limit":2 +} + + +{ + "index": "test", + "options": + { + "scroll": true + }, + "sort": + [ + { "brand_name":{ "order":"asc"} }, + { "id":{ "order":"asc"} } + ], + "limit":2 +} + + +{ + "index": "test", + "options": + { + "scroll": "eyJvcmRlcl9ieV9zdHIiOiJicmFuZF9uYW1lIGFzYywgaWQgYXNjIiwib3JkZXJfYnkiOlt7ImF0dHIiOiJicmFuZF9uYW1lIiwiZGVzYyI6ZmFsc2UsInZhbHVlIjoiQSIsInR5cGUiOiJzdHJpbmcifSx7ImF0dHIiOiJpZCIsImRlc2MiOmZhbHNlLCJ2YWx1ZSI6MiwidHlwZSI6ImludCJ9XX0=" + }, + "sort": + [ + { "brand_name":{ "order":"asc"} }, + { "id":{ "order":"asc"} } + ], + "limit":3 +} + +