@@ -530,9 +530,8 @@ class RNTupleDescriptorBuilder {
530530 if ( ! isList )
531531 throw new Error ( 'Cluster group frame is not a list frame' ) ;
532532
533- const groupCount = reader . readU32 ( ) ,
534-
535- clusterGroups = [ ] ;
533+ const groupCount = reader . readU32 ( ) ;
534+ this . clusterGroups = [ ] ;
536535
537536 for ( let i = 0 ; i < groupCount ; ++ i ) {
538537 const recordStart = BigInt ( reader . offset ) ,
@@ -542,20 +541,11 @@ class RNTupleDescriptorBuilder {
542541 numClusters = reader . readU32 ( ) ,
543542 pageListLength = reader . readU64 ( ) ,
544543 // Locator method to get the page list locator offset
545- pageListLocator = this . _readLocator ( reader ) ,
546-
547- group = {
548- minEntry,
549- entrySpan,
550- numClusters,
551- pageListLocator,
552- pageListLength
553- } ;
554- clusterGroups . push ( group ) ;
544+ pageListLocator = this . _readLocator ( reader ) ;
545+ this . clusterGroups . push ( { minEntry, entrySpan, numClusters, pageListLocator, pageListLength } ) ;
555546 reader . seek ( Number ( recordStart + clusterRecordSize ) ) ;
556547 }
557548 reader . seek ( Number ( startOffset - clusterGroupListSize ) ) ;
558- this . clusterGroups = clusterGroups ;
559549 }
560550
561551 _readLocator ( reader ) {
@@ -586,38 +576,34 @@ class RNTupleDescriptorBuilder {
586576 clusterSummaryListSize = reader . readS64 ( ) ;
587577 if ( clusterSummaryListSize >= 0 )
588578 throw new Error ( 'Expected a list frame for cluster summaries' ) ;
589- const clusterSummaryCount = reader . readU32 ( ) ,
590- clusterSummaries = [ ] ;
579+ const clusterSummaryCount = reader . readU32 ( ) ;
580+ this . clusterSummaries = [ ] ;
591581
592582 for ( let i = 0 ; i < clusterSummaryCount ; ++ i ) {
593583 const recordStart = BigInt ( reader . offset ) ,
594584 clusterSummaryRecordSize = reader . readS64 ( ) ,
595585 firstEntry = reader . readU64 ( ) ,
596586 combined = reader . readU64 ( ) ,
597- flags = combined >> 56n ;
587+ flags = combined >> 56n ,
588+ numEntries = Number ( combined & 0x00FFFFFFFFFFFFFFn ) ;
598589 if ( flags & 0x01n )
599590 throw new Error ( 'Cluster summary uses unsupported sharded flag (0x01)' ) ;
600- const numEntries = Number ( combined & 0x00FFFFFFFFFFFFFFn ) ;
601- clusterSummaries . push ( {
602- firstEntry,
603- numEntries,
604- flags
605- } ) ;
591+ this . clusterSummaries . push ( { firstEntry, numEntries, flags } ) ;
606592 reader . seek ( Number ( recordStart + clusterSummaryRecordSize ) ) ;
607593 }
608594 reader . seek ( Number ( listStartOffset - clusterSummaryListSize ) ) ;
609- this . clusterSummaries = clusterSummaries ;
610595 this . _readNestedFrames ( reader ) ;
611596
612597 reader . readU64 ( ) ; // checksumPagelist
613598 }
614599
615600 _readNestedFrames ( reader ) {
616- const clusterPageLocations = [ ] ,
617- numListClusters = reader . readS64 ( ) ;
601+ const numListClusters = reader . readS64 ( ) ,
602+ numRecordCluster = reader . readU32 ( ) ;
618603 if ( numListClusters >= 0 )
619604 throw new Error ( 'Expected list frame for clusters' ) ;
620- const numRecordCluster = reader . readU32 ( ) ;
605+
606+ this . pageLocations = [ ] ;
621607
622608 for ( let i = 0 ; i < numRecordCluster ; ++ i ) {
623609 const outerListSize = reader . readS64 ( ) ;
@@ -659,10 +645,8 @@ class RNTupleDescriptorBuilder {
659645 } ) ;
660646 }
661647
662- clusterPageLocations . push ( columns ) ;
648+ this . pageLocations . push ( columns ) ;
663649 }
664-
665- this . pageLocations = clusterPageLocations ;
666650 }
667651
668652 /** @summary Search field by name
@@ -1038,7 +1022,7 @@ class ReaderItem {
10381022 case kSplitInt16 : decodeZigzag16 ( view ) ; break ;
10391023 case kSplitInt32 : decodeZigzag32 ( view ) ; break ;
10401024 case kSplitInt64 : decodeZigzag64 ( view ) ; break ;
1041- } ;
1025+ }
10421026
10431027 this . views [ page_indx ] = view ;
10441028 }
0 commit comments