@@ -1388,12 +1388,21 @@ read_chunk_with_metadata(
1388
1388
{error , chunk_not_found };
1389
1389
{ok , _ , {AbsoluteOffset , _ , _ , _ , _ , _ , ChunkSize }}
1390
1390
when AbsoluteOffset - SeekOffset >= ChunkSize ->
1391
+ case ar_sync_record :delete (AbsoluteOffset - ChunkSize , SeekOffset - 1 , ? MODULE ,
1392
+ StoreID ) of
1393
+ ok ->
1394
+ ? LOG_DEBUG ([{event , clean_up_sync_record_false_positive },
1395
+ {left , SeekOffset - 1 }, {right , AbsoluteOffset - ChunkSize }]);
1396
+ Err ->
1397
+ ? LOG_WARNING ([{event , failed_to_clean_up_sync_record },
1398
+ {error , io_lib :format (" ~p " , [Err ])}])
1399
+ end ,
1391
1400
{error , chunk_not_found };
1392
1401
{ok , _ , {AbsoluteOffset , ChunkDataKey , TXRoot , _ , TXPath , _ , ChunkSize }} ->
1393
1402
case read_chunk (AbsoluteOffset , {chunk_data_db , StoreID }, ChunkDataKey , StoreID ) of
1394
1403
not_found ->
1395
- invalidate_bad_data_record ({SeekOffset - 1 , AbsoluteOffset , { chunks_index , StoreID },
1396
- StoreID , 1 }),
1404
+ invalidate_bad_data_record ({SeekOffset - 1 , AbsoluteOffset ,
1405
+ { chunks_index , StoreID }, StoreID , 1 }),
1397
1406
{error , chunk_not_found };
1398
1407
{error , Error } ->
1399
1408
? LOG_ERROR ([{event , failed_to_read_chunk },
0 commit comments