Repository Analysis

juicedata/juicefs

JuiceFS is a distributed POSIX file system built on top of Redis and S3.

1.3 Likely human-written View on GitHub
1.3
Adjusted Score
1.3
Raw Score
100%
Time Factor
2026-05-29
Last Push
13,636
Stars
Go
Language
214,037
Lines of Code
731
Files
209
Pattern Hits
2026-05-31
Scan Date

Score History

Severity Breakdown

CRITICAL 0HIGH 0MEDIUM 29LOW 180

Pattern Findings

209 matches across 9 categories. Click a row to expand file-level details.

Self-Referential Comments19 hits · 70 pts
SeverityFileLineSnippet
MEDIUMcmd/format.go65# Create a simple test volume (data will be stored in a local directory)
MEDIUMcmd/format.go68# Create a volume with Redis and S3
MEDIUMcmd/format.go71# Create a volume with password protected MySQL
MEDIUMcmd/format.go76# Create a volume with "quota" enabled
MEDIUMcmd/format.go79# Create a volume with "trash" disabled
MEDIUMintegration/s3gateway_test.sh605 # Create a multipart struct file for completing multipart transaction
MEDIUMintegration/s3gateway_test.sh708 # Create a multipart struct file for completing multipart transaction
MEDIUMintegration/s3gateway_test.sh1176 # Create a multipart struct file for completing multipart transaction
MEDIUMintegration/s3gateway_test.sh1690 # Create a multipart struct file for completing multipart transaction
MEDIUMintegration/s3gateway_test.sh2012 # Create a multipart struct file for completing multipart transaction
MEDIUM.github/scripts/apt_install.sh8# Define a function to run a command and check the return code
MEDIUM.github/scripts/hypo/common.py49 # Create a logger object
MEDIUM.github/scripts/hypo/common.py54 # Create a file handler for the logger
MEDIUM.github/scripts/hypo/common.py57 # Create a stream handler for the logger
MEDIUM.github/scripts/hypo/common.py60 # Create a formatter for the log messages
MEDIUM.github/scripts/command/tier.sh899 # Create a deep directory tree with files at every level
MEDIUM.github/scripts/perf/ai_format_benchmark.py472 # Create a simple ONNX model
MEDIUM.github/scripts/perf/ai_format_benchmark.py479 # Create a simple graph
MEDIUM.github/scripts/perf/ai_format_benchmark.py628 # Create a simple model
Unused Imports65 hits · 63 pts
SeverityFileLineSnippet
LOWsdk/python/examples/fsspec/main.py5
LOWsdk/python/examples/ffrecord/dataset.py21
LOWsdk/python/examples/ffrecord/dataloader.py16
LOWsdk/python/examples/ffrecord/dataloader.py17
LOWsdk/python/examples/ffrecord/dataloader.py17
LOWsdk/python/examples/ffrecord/dataloader.py17
LOWsdk/python/examples/ffrecord/dataloader.py18
LOWsdk/python/examples/ffrecord/filereader.py23
LOWsdk/python/examples/ffrecord/filereader.py26
LOWsdk/python/examples/ffrecord/filereader.py27
LOWsdk/python/examples/ffrecord/filereader.py29
LOWsdk/python/juicefs/tests/test.py6
LOWsdk/python/juicefs/juicefs/__init__.py1
LOWsdk/python/juicefs/juicefs/juicefs.py29
LOW.github/scripts/flush_meta.py2
LOW.github/scripts/flush_meta.py3
LOW.github/scripts/flush_meta.py4
LOW.github/scripts/fsrand.py39
LOW.github/scripts/testVersionCompatible.py6
LOW.github/scripts/testVersionCompatible.py9
LOW.github/scripts/testVersionCompatible.py13
LOW.github/scripts/testVersionCompatible.py16
LOW.github/scripts/testVersionCompatible.py29
LOW.github/scripts/testVersionCompatible.py30
LOW.github/scripts/testVersionCompatible.py31
LOW.github/scripts/wins_fs_test.py2
LOW.github/scripts/wins_fs_test.py3
LOW.github/scripts/hypo/sync.py9
LOW.github/scripts/hypo/sync.py10
LOW.github/scripts/hypo/sync.py10
LOW.github/scripts/hypo/sync.py10
LOW.github/scripts/hypo/sync.py12
LOW.github/scripts/hypo/fs_test.py1
LOW.github/scripts/hypo/file_op.py5
LOW.github/scripts/hypo/file_op.py7
LOW.github/scripts/hypo/file_op.py15
LOW.github/scripts/hypo/file_op.py16
LOW.github/scripts/hypo/file_op.py17
LOW.github/scripts/hypo/file_op.py25
LOW.github/scripts/hypo/command.py4
LOW.github/scripts/hypo/command.py15
LOW.github/scripts/hypo/command.py28
LOW.github/scripts/hypo/command.py29
LOW.github/scripts/hypo/command.py29
LOW.github/scripts/hypo/command.py34
LOW.github/scripts/hypo/s3_op.py23
LOW.github/scripts/hypo/file.py2
LOW.github/scripts/hypo/file.py12
LOW.github/scripts/hypo/file.py16
LOW.github/scripts/hypo/file.py19
LOW.github/scripts/hypo/fs.py16
LOW.github/scripts/hypo/fs_op.py15
LOW.github/scripts/hypo/s3_test.py3
LOW.github/scripts/hypo/s3.py3
LOW.github/scripts/hypo/s3.py16
LOW.github/scripts/hypo/s3.py17
LOW.github/scripts/pysdk/pysdk_test.py6
LOW.github/scripts/mutate/modify_sdk_pom.py4
LOW.github/scripts/mutate/save_report.py4
LOW.github/scripts/mutate/save_report.py7
5 more matches not shown…
Over-Commented Block41 hits · 41 pts
SeverityFileLineSnippet
LOWintegration/ioctl_test.sh1#!/bin/bash
LOWintegration/s3gateway_test.sh1#!/bin/bash
LOWhack/winfsp_headers/winfsp_fuse.h21 */
LOWhack/winfsp_headers/winfsp_fuse.h41#endif
LOWhack/winfsp_headers/winfsp_fuse.h221 0/*conv_to_win_path*/, \
LOWhack/winfsp_headers/winfsp_fuse.h241#define fuse_dev_t dev_t
LOWhack/winfsp_headers/fuse_common.h41
LOWhack/winfsp_headers/fuse_common.h61#define FUSE_IOCTL_RETRY (1 << 2)
LOWdocs/en/reference/how_to_set_up_metadata_engine.md401[general]
LOWsdk/python/examples/ffrecord/dataset.py1# encoding: utf-8
LOWsdk/python/examples/ffrecord/filereader_dio.py1# encoding: utf-8
LOWsdk/python/examples/ffrecord/dataloader.py1# encoding: utf-8
LOWsdk/python/examples/ffrecord/filereader.py1# encoding: utf-8
LOWsdk/python/examples/ffrecord/main.py1# encoding: utf-8
LOWsdk/python/juicefs/juicefs/spec.py1# encoding: utf-8
LOWsdk/python/juicefs/juicefs/juicefs.py1# encoding: utf-8
LOWsdk/java/kerberos.sh1#!/bin/sh
LOWsdk/java/libjfs/bridge.go1// Copyright 2016 The Prometheus Authors
LOWsdk/java/libjfs/bridge_test.go1// Copyright 2018 The Prometheus Authors
LOWsdk/java/libjfs/remote_write_test.go1// Copyright 2025 JuiceFS Authors
LOWsdk/java/libjfs/remote_write.go1// Copyright 2025 JuiceFS Authors
LOW.github/workflows/codeql-analysis.yml1# For most projects, this workflow file will not need changing; you simply need
LOW.github/workflows/codeql-analysis.yml61 # By default, queries listed here will override any specified in a config file.
LOW.github/workflows/dependency-review.yml21# with:
LOW.github/workflows/resources/tpcds_run.scala1// Copyright 2015 Databricks
LOW.github/workflows/resources/tpcds_datagen.scala1// Copyright 2015 Databricks
LOW.github/scripts/cmptree.py1#!/usr/bin/env python
LOW.github/scripts/fsrand.py1#!/usr/bin/env python
LOW.github/scripts/setup-hdfs.sh1#!/bin/bash
LOW.github/scripts/mutate/save_report.py1
LOW.github/scripts/sync/sync_fsrand.sh181 if [ $? -ne 0 ]; then
LOWpkg/vfs/vfs.go1401// Linux ACL format:
LOWpkg/fuse/device_darwin.go1// Copyright 2020 Chaos Mesh Authors.
LOWpkg/fuse/device_linux.go1// Copyright 2020 Chaos Mesh Authors.
LOWpkg/meta/base_test.go3721 m.Remove(ctx, RootInode, "batchDst2", false, RmrDefaultThreads, nil)
LOWpkg/meta/random_test.go1361// FIXME: The comparison of the truncate results requires compacting all slices,
LOWpkg/meta/random_test.go1381 t.Fatalf("expect %s but got %s", st2, st)
LOWpkg/meta/interface.go421 Access(ctx Context, inode Ino, modemask uint8, attr *Attr) syscall.Errno
LOWpkg/meta/interface.go441 Symlink(ctx Context, parent Ino, name string, path string, inode *Ino, attr *Attr) syscall.Errno
LOWpkg/utils/logger.go1// Copyright 2015 Ka-Hing Cheung
LOWpkg/fs/http.go301 // http.Handle("/", h)
Excessive Try-Catch Wrapping28 hits · 30 pts
SeverityFileLineSnippet
MEDIUM.github/scripts/utils.py93 print("Error: %s : %s" % (storage_dir, e.strerror))
LOW.github/scripts/hypo/common.py106 except Exception as e:
MEDIUM.github/scripts/hypo/fs_op.py906def do_change_groups(self, user, group, groups):
LOW.github/scripts/hypo/fs_op.py578 except Exception as e:
LOW.github/scripts/hypo/fs_op.py594 except Exception as e:
LOW.github/scripts/hypo/fs_op.py616 except Exception as e:
LOW.github/scripts/hypo/fs_op.py635 except Exception as e:
LOW.github/scripts/hypo/fs_op.py693 except Exception as e:
LOW.github/scripts/hypo/fs_op.py716 except Exception as e:
LOW.github/scripts/hypo/fs_op.py736 except Exception as e:
LOW.github/scripts/hypo/fs_op.py758 except Exception as e:
LOW.github/scripts/hypo/fs_op.py785 except Exception as e:
LOW.github/scripts/hypo/fs_op.py803 except Exception as e:
LOW.github/scripts/hypo/fs_op.py820 except Exception as e:
LOW.github/scripts/hypo/fs_op.py838 except Exception as e:
LOW.github/scripts/hypo/fs_op.py854 except Exception as e:
LOW.github/scripts/hypo/fs_op.py881 except Exception as e:
LOW.github/scripts/hypo/fs_op.py898 except Exception as e:
LOW.github/scripts/hypo/fs_op.py925 except Exception as e:
LOW.github/scripts/hypo/fs_op.py937 except Exception as e:
LOW.github/scripts/hypo/fs_op.py987 except Exception as e:
LOW.github/scripts/hypo/fs_op.py1007 except Exception as e:
LOW.github/scripts/hypo/fs_op.py1022 except Exception as e:
LOW.github/scripts/hypo/fs_op.py1056 except Exception as e:
LOW.github/scripts/hypo/command_op.py291 except Exception as e:
MEDIUM.github/scripts/hypo/command_op.py154def do_status(self):
LOW.github/scripts/perf/ai_format_benchmark.py125 except Exception as e:
LOW.github/scripts/perf/ai_format_benchmark.py965 except Exception as e:
Deep Nesting24 hits · 20 pts
SeverityFileLineSnippet
LOWsdk/python/juicefs/juicefs/juicefs.py38
LOWsdk/python/juicefs/juicefs/juicefs.py202
LOWsdk/python/juicefs/juicefs/juicefs.py441
LOW.github/scripts/cmptree.py66
LOW.github/scripts/fsrand.py138
LOW.github/scripts/testVersionCompatible.py92
LOW.github/scripts/testVersionCompatible.py171
LOW.github/scripts/utils.py16
LOW.github/scripts/utils.py84
LOW.github/scripts/hypo/common.py40
LOW.github/scripts/hypo/common.py122
LOW.github/scripts/hypo/fs_op.py133
LOW.github/scripts/hypo/fs_op.py162
LOW.github/scripts/hypo/command_op.py38
LOW.github/scripts/hypo/command_op.py91
LOW.github/scripts/mutate/check_coverage.py22
LOW.github/scripts/mutate/mutesting.py9
LOW.github/scripts/mutate/parse_test_cases.py7
LOW.github/scripts/perf/ai_format_benchmark.py399
LOW.github/scripts/perf/ai_format_benchmark.py973
LOW.github/scripts/perf/ai_format_benchmark.py1031
LOW.github/scripts/perf/ai_format_benchmark.py1064
LOW.github/scripts/perf/ai_format_benchmark.py975
LOW.github/scripts/perf/ai_format_benchmark.py1037
Hyper-Verbose Identifiers18 hits · 20 pts
SeverityFileLineSnippet
LOW.github/scripts/testVersionCompatible.py486 def write_rand_files_and_compare(self):
LOW.github/scripts/testVersionCompatible.py764 def greater_than_version_formatted(self, ver):
LOW.github/scripts/testVersionCompatible.py770 def greater_than_version_dumped(self, ver):
LOW.github/scripts/testVersionCompatible.py775 def greater_than_version_mounted(self, ver):
LOW.github/scripts/wins_fs_test.py57 def test_directory_operations(self):
LOW.github/scripts/wins_fs_test.py73 def test_concurrent_operations(self):
LOW.github/scripts/hypo/s3_op.py444 def do_unset_policy_from_user(self, policy_name, user_name, alias):
LOW.github/scripts/hypo/s3_op.py453 def do_unset_policy_from_group(self, policy_name, group_name, alias):
LOW.github/scripts/hypo/fs_sdk_test.py292 def test_rename_to_dir_not_exist(self):
LOW.github/scripts/pysdk/pysdk_test.py92 def test_chown_uid_gid_arguments_must_be_index(self):
LOW.github/scripts/pysdk/pysdk_test.py230 def test_directory_link_nonlocal(self):
LOW.github/scripts/mutate/check_skip_by_comment.py6def is_mutation_skipped_by_comment(original_file, changed_file):
LOW.github/scripts/perf/ai_format_benchmark.py350 def benchmark_pytorch_weights(self):
LOW.github/scripts/perf/ai_format_benchmark.py194 def generate_random_image_bytes(self, width=64, height=64, format="JPEG", quality=85):
LOW.github/scripts/perf/ai_format_benchmark.py227 def read_lmdb_data_single_process(self, lmdb_path):
LOW.github/scripts/perf/ai_format_benchmark.py258 def read_lmdb_data_multi_process(self, lmdb_path, num_processes=2):
LOW.github/scripts/perf/ai_format_benchmark.py544 def benchmark_huggingface_bin(self):
LOW.github/scripts/perf/ai_format_benchmark.py606 def benchmark_tensorflow_checkpoint(self):
Decorative Section Separators4 hits · 15 pts
SeverityFileLineSnippet
MEDIUM.github/scripts/perf/ai_format_benchmark.py346 # ----------------------------------------------------------------------
MEDIUM.github/scripts/perf/ai_format_benchmark.py348 # ----------------------------------------------------------------------
MEDIUM.github/scripts/perf/ai_format_benchmark.py697 # ----------------------------------------------------------------------
MEDIUM.github/scripts/perf/ai_format_benchmark.py699 # ----------------------------------------------------------------------
Redundant / Tautological Comments7 hits · 10 pts
SeverityFileLineSnippet
LOW.github/scripts/compare_results.sh90# Check if any scenario has "worse" results
LOW.github/scripts/cache.sh700 # Check if total size exceeds max limit
LOW.github/scripts/cache.sh712 # Check if each directory is evenly distributed based on its weight
LOW.github/scripts/start_meta_engine.sh56 # Check if tiup playground process is still alive
LOW.github/scripts/command/tier.sh768 # Set files to different tiers
LOW.github/scripts/command/tier.sh907 # Set all to tier 1 recursively
LOW.github/scripts/perf/compare_mdtest_fio.sh247# Check if any scenario has "worse" results
AI Slop Vocabulary3 hits · 5 pts
SeverityFileLineSnippet
MEDIUM.github/scripts/perf/ai_format_benchmark.py1125 # Run comprehensive benchmarks
MEDIUM.github/scripts/perf/ai_format_benchmark.py937 """Run comprehensive benchmarks with multiple file sizes"""
MEDIUM.github/scripts/perf/ai_format_benchmark.py1032 """Save results to JSON file with comprehensive report"""