Skip to content

Commit 42b18ee

Browse files
committed
Merge remote-tracking branch 'origin/candidate-10.0.x'
Signed-off-by: Gavin Halliday <gavin.halliday@lexisnexis.com>
2 parents a30d2e0 + c9dc6bc commit 42b18ee

File tree

19 files changed

+400
-219
lines changed

19 files changed

+400
-219
lines changed

ecl/hqlcpp/hqlttcpp.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -115,6 +115,7 @@ static bool isWorthHoisting(IHqlExpression * expr, bool asSubQuery)
115115
case no_sectioninput:
116116
case no_dataset_alias:
117117
case no_forcegraph:
118+
case no_metaactivity:
118119
expr = expr->queryChild(0);
119120
break;
120121
case no_fail:

esp/bindings/http/platform/httpservice.cpp

Lines changed: 3 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -2501,16 +2501,13 @@ EspAuthState CEspHttpServer::handleAuthFailed(bool sessionAuth, EspAuthRequest&
25012501
return authTaskDone;
25022502
}
25032503

2504+
authReq.ctx->addTraceSummaryValue(LogMin, "authAction", sessionAuth ? "askUserLogin" : "sendBasicChallenge", TXSUMMARY_GRP_CORE);
2505+
25042506
if (!sessionAuth)
2505-
{
2506-
ESPLOG(LogMin, "Authentication failed: send BasicAuthentication.");
25072507
m_response->sendBasicChallenge(authReq.authBinding->getChallengeRealm(), true);
2508-
}
25092508
else
2510-
{
2511-
ESPLOG(LogMin, "Authentication failed: call askUserLogin.");
25122509
askUserLogin(authReq, msg);
2513-
}
2510+
25142511
return authFailed;
25152512
}
25162513

esp/src/package-lock.json

Lines changed: 282 additions & 121 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

esp/src/package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -49,19 +49,19 @@
4949
"@fluentui/react-icons-mdl2": "1.3.88",
5050
"@fluentui/react-migration-v8-v9": "9.9.7",
5151
"@fluentui/react-timepicker-compat": "0.4.16",
52-
"@hpcc-js/chart": "3.3.9",
52+
"@hpcc-js/chart": "3.5.2",
5353
"@hpcc-js/codemirror": "3.4.1",
5454
"@hpcc-js/common": "3.3.9",
5555
"@hpcc-js/comms": "3.10.0",
5656
"@hpcc-js/dataflow": "3.0.1",
57-
"@hpcc-js/eclwatch": "3.3.0",
57+
"@hpcc-js/eclwatch": "3.5.2",
5858
"@hpcc-js/graph": "3.3.12",
5959
"@hpcc-js/html": "3.2.10",
6060
"@hpcc-js/layout": "3.2.10",
6161
"@hpcc-js/map": "3.2.15",
6262
"@hpcc-js/other": "3.2.10",
6363
"@hpcc-js/phosphor": "3.2.10",
64-
"@hpcc-js/timeline": "3.0.0",
64+
"@hpcc-js/timeline": "3.2.2",
6565
"@hpcc-js/util": "3.3.9",
6666
"@hpcc-js/wasm-duckdb": "1.9.0",
6767
"@hpcc-js/wasm-graphviz": "1.11.0",

system/jhtree/jhblockcompressed.cpp

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -123,7 +123,7 @@ void CJHBlockCompressedSearchNode::load(CKeyHdr *_keyHdr, const void *rawData, o
123123
zeroFilePosition = *(bool*) keys;
124124
keys += sizeof(bool);
125125

126-
keyRecLen = zeroFilePosition ? (keyLen + sizeof(offset_t)) : keyLen;
126+
keyRecLen = zeroFilePosition ? keyLen : (keyLen + sizeof(offset_t));
127127

128128
CCycleTimer expansionTimer(true);
129129
keyBuf = expandBlock(keys, inMemorySize, compressionMethod);
@@ -144,12 +144,12 @@ bool CJHBlockCompressedSearchNode::fetchPayload(unsigned int index, char *dst, P
144144
if (keyHdr->hasSpecialFileposition())
145145
{
146146
if (zeroFilePosition)
147-
memcpy(dst+keyCompareLen, p+keyCompareLen, keyLen + sizeof(offset_t) - keyCompareLen);
148-
else
149147
{
150148
memcpy(dst+keyCompareLen, p+keyCompareLen, keyLen-keyCompareLen);
151-
*((offset_t*) dst+keyLen) = 0;
149+
*(offset_t*)(dst+keyLen) = 0;
152150
}
151+
else
152+
memcpy(dst+keyCompareLen, p+keyCompareLen, keyLen + sizeof(offset_t) - keyCompareLen);
153153
}
154154
else
155155
{
@@ -182,7 +182,7 @@ size32_t CJHBlockCompressedSearchNode::getSizeAt(unsigned int index) const
182182
offset_t CJHBlockCompressedSearchNode::getFPosAt(unsigned int index) const
183183
{
184184
if (index >= hdr.numKeys) return 0;
185-
if (!zeroFilePosition) return 0;
185+
if (zeroFilePosition) return 0;
186186

187187
offset_t pos;
188188
const char * p = keyBuf + index*keyRecLen + keyLen;
@@ -270,13 +270,13 @@ bool CBlockCompressedWriteNode::add(offset_t pos, const void *indata, size32_t i
270270
keyPtr += sizeof(context.compressionMethod);
271271
hdr.keyBytes += sizeof(context.compressionMethod);
272272

273-
bool hasFilepos = !context.zeroFilePos;
274-
*(bool*)keyPtr = hasFilepos;
273+
*(bool*)keyPtr = context.zeroFilePos;
275274
keyPtr += sizeof(bool);
276275
hdr.keyBytes += sizeof(bool);
277276

278277
//Adjust the fixed key size to include the fileposition field which is written by writekey
279278
bool isVariable = keyHdr->isVariable();
279+
bool hasFilepos = !context.zeroFilePos;
280280
size32_t fixedKeySize = isVariable ? 0 : (hasFilepos ? keyLen + sizeof(offset_t) : keyLen);
281281

282282
ICompressHandler * handler = queryCompressHandler(context.compressionMethod);
@@ -306,7 +306,7 @@ void CBlockCompressedWriteNode::finalize()
306306

307307
//=========================================================================================================
308308

309-
BlockCompressedIndexCompressor::BlockCompressedIndexCompressor(unsigned keyedSize, IHThorIndexWriteArg *helper, const char* options)
309+
BlockCompressedIndexCompressor::BlockCompressedIndexCompressor(unsigned keyedSize, IHThorIndexWriteArg *helper, const char* options, bool isTLK)
310310
{
311311
CompressionMethod compressionMethod = COMPRESS_METHOD_ZSTDS;
312312
StringBuffer compressionOptions;
@@ -336,7 +336,7 @@ BlockCompressedIndexCompressor::BlockCompressedIndexCompressor(unsigned keyedSiz
336336
if (!context.compressionHandler)
337337
throw MakeStringException(0, "Unknown compression method %d", (int)compressionMethod);
338338

339-
if (helper && (helper->getFlags() & TIWzerofilepos))
339+
if (!isTLK && helper && (helper->getFlags() & TIWzerofilepos))
340340
context.zeroFilePos = true;
341341
}
342342

@@ -358,7 +358,7 @@ void CJHBlockCompressedVarNode::load(CKeyHdr *_keyHdr, const void *rawData, offs
358358
KEYRECSIZE_T recsize = *(KEYRECSIZE_T *)finger;
359359
_WINREV(recsize);
360360
finger += recsize + sizeof(KEYRECSIZE_T);
361-
if (zeroFilePosition)
361+
if (!zeroFilePosition)
362362
finger += sizeof(offset_t);
363363
}
364364
}
@@ -380,12 +380,12 @@ bool CJHBlockCompressedVarNode::fetchPayload(unsigned int num, char *dst, Payloa
380380
if (keyHdr->hasSpecialFileposition())
381381
{
382382
if (zeroFilePosition)
383-
memcpy(dst+keyCompareLen, p+keyCompareLen, reclen + sizeof(offset_t) - keyCompareLen);
384-
else
385383
{
386384
memcpy(dst+keyCompareLen, p+keyCompareLen, reclen-keyCompareLen);
387-
*((offset_t*) dst+reclen) = 0;
385+
*(offset_t*)(dst+keyLen) = 0;
388386
}
387+
else
388+
memcpy(dst+keyCompareLen, p+keyCompareLen, reclen + sizeof(offset_t) - keyCompareLen);
389389
}
390390
else
391391
memcpy(dst+keyCompareLen, p+keyCompareLen, reclen-keyCompareLen);

system/jhtree/jhblockcompressed.hpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -95,7 +95,7 @@ class jhtree_decl CBlockCompressedWriteNode : public CWriteNode
9595
char *lastKeyValue = nullptr;
9696
unsigned __int64 lastSequence = 0;
9797
size32_t keyLen = 0;
98-
size32_t memorySize;
98+
size32_t memorySize = 0;
9999
const CBlockCompressedBuildContext& context;
100100
public:
101101
CBlockCompressedWriteNode(offset_t fpos, CKeyHdr *keyHdr, bool isLeafNode, const CBlockCompressedBuildContext& ctx);
@@ -112,7 +112,7 @@ class BlockCompressedIndexCompressor : public CInterfaceOf<IIndexCompressor>
112112
{
113113
CBlockCompressedBuildContext context;
114114
public:
115-
BlockCompressedIndexCompressor(unsigned keyedSize, IHThorIndexWriteArg *helper, const char* options);
115+
BlockCompressedIndexCompressor(unsigned keyedSize, IHThorIndexWriteArg *helper, const char* options, bool isTLK);
116116

117117
virtual const char *queryName() const override { return "Block"; }
118118

system/jhtree/keybuild.cpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -136,9 +136,9 @@ class HybridIndexCompressor : public CInterfaceOf<IIndexCompressor>
136136
Owned<IIndexCompressor> leafCompressor;
137137
Owned<IIndexCompressor> branchCompressor;
138138
public:
139-
HybridIndexCompressor(unsigned keyedSize, const CKeyHdr* keyHdr, IHThorIndexWriteArg *helper, const char * compression)
139+
HybridIndexCompressor(unsigned keyedSize, const CKeyHdr* keyHdr, IHThorIndexWriteArg *helper, const char * compression, bool isTLK)
140140
{
141-
leafCompressor.setown(new BlockCompressedIndexCompressor(keyedSize, helper, compression));
141+
leafCompressor.setown(new BlockCompressedIndexCompressor(keyedSize, helper, compression, isTLK));
142142
branchCompressor.setown(new InplaceIndexCompressor(keyedSize, keyHdr, helper, compression));
143143
}
144144

@@ -287,7 +287,7 @@ class CKeyBuilder : public CInterfaceOf<IKeyBuilder>
287287
else if (strieq(compression, "inplace") || startsWithIgnoreCase(compression, "inplace:"))
288288
indexCompressor.setown(new InplaceIndexCompressor(keyedSize, keyHdr, _helper, compression));
289289
else if (strieq(compression, "hybrid") || startsWithIgnoreCase(compression, "hybrid:"))
290-
indexCompressor.setown(new HybridIndexCompressor(keyedSize, keyHdr, _helper, compression));
290+
indexCompressor.setown(new HybridIndexCompressor(keyedSize, keyHdr, _helper, compression, isTLK));
291291
else if (strieq(compression, "legacy"))
292292
indexCompressor.setown(new LegacyIndexCompressor);
293293
else

system/jlib/jstats.cpp

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1425,7 +1425,7 @@ const StatisticsMapping diskLocalStatistics({StCycleDiskReadIOCycles, StSizeDisk
14251425
const StatisticsMapping diskRemoteStatistics({StTimeDiskReadIO, StSizeDiskRead, StNumDiskReads, StTimeDiskWriteIO, StSizeDiskWrite, StNumDiskWrites, StNumDiskRetries});
14261426
const StatisticsMapping diskReadRemoteStatistics({StTimeDiskReadIO, StSizeDiskRead, StNumDiskReads, StNumDiskRetries, StCycleDiskReadIOCycles});
14271427
const StatisticsMapping diskWriteRemoteStatistics({StTimeDiskWriteIO, StSizeDiskWrite, StNumDiskWrites, StNumDiskRetries, StCycleDiskWriteIOCycles});
1428-
const StatisticsMapping stdAggregateKindStatistics({StCostFileAccess, StSizeGraphSpill, StSizeSpillFile});
1428+
const StatisticsMapping stdAggregateKindStatistics({StCostFileAccess, StSizeGraphSpill, StSizeSpillFile, StCostExecute});
14291429

14301430
const StatisticsMapping * queryStatsMapping(const StatsScopeId & scope, unsigned hashcode)
14311431
{

system/security/LdapSecurity/ldapconnection.cpp

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1783,10 +1783,7 @@ class CLdapClient : implements ILdapClient, public CInterface
17831783
const char* username = user.getName();
17841784
const char* password = user.credentials().getPassword();
17851785
if(!username || !*username || !password || !*password)
1786-
{
1787-
DBGLOG("CLdapClient::authenticate username/password must be provided");
17881786
return false;
1789-
}
17901787

17911788
if (getMaxPwdAge(m_connections,(char*)m_ldapconfig->getBasedn(), m_ldapconfig->getLdapTimeout()) != PWD_NEVER_EXPIRES)
17921789
m_domainPwdsNeverExpire = false;

testing/regress/ecl/key/setupsearchindex.xml

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,3 +32,7 @@
3232
</Dataset>
3333
<Dataset name='Result 17'>
3434
</Dataset>
35+
<Dataset name='Result 18'>
36+
</Dataset>
37+
<Dataset name='Result 19'>
38+
</Dataset>

0 commit comments

Comments
 (0)