debug: add comprehensive logging to getAllShardedFiles for root cause analysis
- Log baseDir path (relative and absolute) - Log current working directory - Log directory exists check - Log all entries found in baseDir - Log each shard directory being processed - Log file counts in each shard - Log any errors encountered - This will definitively show why 0 files are returned
This commit is contained in:
parent
4e5c1224a3
commit
550161dc46
1 changed files with 38 additions and 1 deletions
|
|
@ -2338,10 +2338,31 @@ export class FileSystemStorage extends BaseStorage {
|
||||||
* Traverses all shard subdirectories (00-ff)
|
* Traverses all shard subdirectories (00-ff)
|
||||||
*/
|
*/
|
||||||
private async getAllShardedFiles(baseDir: string): Promise<string[]> {
|
private async getAllShardedFiles(baseDir: string): Promise<string[]> {
|
||||||
|
console.log(`[DEBUG] getAllShardedFiles called with baseDir: ${baseDir}`)
|
||||||
|
console.log(`[DEBUG] Current working directory: ${process.cwd()}`)
|
||||||
|
console.log(`[DEBUG] Resolved absolute path: ${path.resolve(baseDir)}`)
|
||||||
|
|
||||||
const allFiles: string[] = []
|
const allFiles: string[] = []
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
// Check if directory exists
|
||||||
|
try {
|
||||||
|
const baseStat = await fs.promises.stat(baseDir)
|
||||||
|
console.log(`[DEBUG] baseDir exists: ${baseStat.isDirectory() ? 'is directory' : 'is NOT directory'}`)
|
||||||
|
} catch (statError: any) {
|
||||||
|
console.log(`[DEBUG] baseDir stat failed: ${statError.message}`)
|
||||||
|
if (statError.code === 'ENOENT') {
|
||||||
|
console.log(`[DEBUG] baseDir does not exist, returning empty array`)
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
throw statError
|
||||||
|
}
|
||||||
|
|
||||||
const shardDirs = await fs.promises.readdir(baseDir)
|
const shardDirs = await fs.promises.readdir(baseDir)
|
||||||
|
console.log(`[DEBUG] Found ${shardDirs.length} entries in baseDir: ${JSON.stringify(shardDirs.slice(0, 10))}${shardDirs.length > 10 ? '...' : ''}`)
|
||||||
|
|
||||||
|
let dirsProcessed = 0
|
||||||
|
let filesFound = 0
|
||||||
|
|
||||||
for (const shardDir of shardDirs) {
|
for (const shardDir of shardDirs) {
|
||||||
const shardPath = path.join(baseDir, shardDir)
|
const shardPath = path.join(baseDir, shardDir)
|
||||||
|
|
@ -2350,26 +2371,42 @@ export class FileSystemStorage extends BaseStorage {
|
||||||
const stat = await fs.promises.stat(shardPath)
|
const stat = await fs.promises.stat(shardPath)
|
||||||
|
|
||||||
if (stat.isDirectory()) {
|
if (stat.isDirectory()) {
|
||||||
|
dirsProcessed++
|
||||||
|
console.log(`[DEBUG] Processing shard directory ${dirsProcessed}: ${shardDir}`)
|
||||||
|
|
||||||
const shardFiles = await fs.promises.readdir(shardPath)
|
const shardFiles = await fs.promises.readdir(shardPath)
|
||||||
|
console.log(`[DEBUG] Found ${shardFiles.length} entries in ${shardDir}`)
|
||||||
|
|
||||||
|
let jsonCount = 0
|
||||||
for (const file of shardFiles) {
|
for (const file of shardFiles) {
|
||||||
if (file.endsWith('.json')) {
|
if (file.endsWith('.json')) {
|
||||||
allFiles.push(file)
|
allFiles.push(file)
|
||||||
|
jsonCount++
|
||||||
|
filesFound++
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
console.log(`[DEBUG] Added ${jsonCount} .json files from ${shardDir} (total so far: ${filesFound})`)
|
||||||
|
} else {
|
||||||
|
console.log(`[DEBUG] Skipping non-directory entry: ${shardDir}`)
|
||||||
}
|
}
|
||||||
} catch (shardError) {
|
} catch (shardError: any) {
|
||||||
// Skip inaccessible shard directories
|
// Skip inaccessible shard directories
|
||||||
|
console.log(`[DEBUG] Error accessing shard ${shardDir}: ${shardError.message}`)
|
||||||
continue
|
continue
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
console.log(`[DEBUG] getAllShardedFiles complete: processed ${dirsProcessed} directories, found ${allFiles.length} total .json files`)
|
||||||
|
|
||||||
// Sort for consistent ordering
|
// Sort for consistent ordering
|
||||||
allFiles.sort()
|
allFiles.sort()
|
||||||
return allFiles
|
return allFiles
|
||||||
|
|
||||||
} catch (error: any) {
|
} catch (error: any) {
|
||||||
|
console.log(`[DEBUG] getAllShardedFiles error: ${error.message}, code: ${error.code}`)
|
||||||
if (error.code === 'ENOENT') {
|
if (error.code === 'ENOENT') {
|
||||||
// Directory doesn't exist yet
|
// Directory doesn't exist yet
|
||||||
|
console.log(`[DEBUG] Directory does not exist, returning empty array`)
|
||||||
return []
|
return []
|
||||||
}
|
}
|
||||||
throw error
|
throw error
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue