FastDFS is a high performance distributed file system (DFS). It's major functions include: file storing, file syncing and file accessing, and design for high capacity and load balance. Wechat/Weixin public account (Chinese Language): fastdfs
This report summarizes scanner evidence for happyfish100/fastdfs, a C project with 9,259 GitHub stars. SynthScan examined 204,048 lines of code across 411 source files, recording 909 pattern matches distributed across 16 syntactic categories. The legacy adjusted pattern signal is 5.4 (Moderate pattern signal); it is not an authorship estimate.
Use the findings to ask whether maintainers can explain intent, verify dependencies, simplify unnecessary scaffolding, and focus review effort. Risk Payload v1 adds ownership, supply-chain, over-engineering, and review-effort vectors when available. These are prompts for human verification, not probabilities, security findings, or measured maintenance costs.
Use each vector to guide manual verification of the underlying findings.
Can maintainers explain intent, assumptions, and trade-offs? 824 finding(s).
Are imports declared and package/API names verified? 66 finding(s).
Are wrappers, guards, and repeated structures necessary? 49 finding(s).
Which changes need focused human review? 909 finding(s).
This chart tracks the legacy adjusted pattern score across scan runs. Changes can reflect source changes, scan coverage, or detector/scoring versions; they do not measure AI adoption or prove that a team refactored code. Compare runs only when their scoring versions are compatible. The dashed line tracks the raw pattern-hit count.
Groups findings by configured severity weight. Severity is not a confidence estimate, security rating, or proof that a package is missing. Verify imports against the project's manifests and inspect each finding in its local design context.
This horizontal bar chart shows where configured pattern scores accumulate across directories. Treat the bars as locations to inspect, not as evidence of authorship or code quality. Use the file-level findings to decide whether a directory needs a focused ownership, dependency, complexity, or review check.
The scanner identified 909 distinct pattern matches across 16 syntactic categories. Each entry below represents a discrete location in the source code where the engine recorded a detector match to inspect in context. Expand any category row to inspect the individual file paths, line numbers, code snippets, and the lexical context (CODE, COMMENT, or STRING) in which each match was detected.
Reading the findings table: The Severity column indicates the configured finding weight (CRITICAL / HIGH / MEDIUM / LOW). The Context column identifies whether the match occurred inside executable code, an inline comment, or a string literal — legacy comment-context matches receive a ×1.5 score weight. The ⚡ bolt icon marks clustered matches: three or more patterns within a 10-line window, each receiving an additional ×1.5 density multiplier under the legacy scoring model.
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cpp_client/examples/file_info_example.cpp | 181 | // ==================================================================== | COMMENT |
| LOW | cpp_client/examples/performance_example.cpp | 21 | * Example: ./performance_example 192.168.1.100:22122 | COMMENT |
| LOW | cpp_client/examples/streaming_example.cpp | 21 | * Example: ./streaming_example 192.168.1.100:22122 | COMMENT |
| LOW | cpp_client/examples/configuration_example.cpp | 21 | */ | COMMENT |
| LOW | cpp_client/examples/cancellation_example.cpp | 21 | */ | COMMENT |
| LOW | cpp_client/examples/advanced_metadata_example.cpp | 21 | */ | COMMENT |
| LOW | cpp_client/src/internal/connection.cpp | 1 | /** | COMMENT |
| LOW | tools/fdfs_tag.c | 61 | #include <sys/time.h> | COMMENT |
| LOW | tools/fdfs_compress.c | 41 | #include <errno.h> | COMMENT |
| LOW | tools/fdfs_config_validator.c | 21 | #include <sys/types.h> | COMMENT |
| LOW | tools/fdfs_capacity_report.c | 21 | #include <sys/stat.h> | COMMENT |
| LOW | tools/fdfs_config_compare.c | 21 | #include <sys/stat.h> | COMMENT |
| LOW | tools/fdfs_dedup.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_network_diag.h | 21 | COMMENT | |
| LOW | tools/fdfs_network_diag.h | 41 | COMMENT | |
| LOW | tools/fdfs_backup.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_network_monitor.c | 21 | #include <sys/types.h> | COMMENT |
| LOW | tools/fdfs_network_monitor.c | 41 | #define LATENCY_CRITICAL_MS 500.0 | COMMENT |
| LOW | tools/fdfs_file_migrate.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_analyze.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_snapshot.c | 61 | #include <pthread.h> | COMMENT |
| LOW | tools/fdfs_recover.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_load_balancer.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_cleanup.c | 41 | #include <pthread.h> | COMMENT |
| LOW | tools/fdfs_storage_stat.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_export.c | 41 | COMMENT | |
| LOW | tools/fdfs_profiler.c | 41 | * - Capacity planning | COMMENT |
| LOW | tools/fdfs_capacity_planner.h | 21 | COMMENT | |
| LOW | tools/fdfs_capacity_planner.h | 41 | /* Threshold defaults */ | COMMENT |
| LOW | tools/fdfs_health_check.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_repair.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_restore.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_capacity_plan.c | 41 | * - Growth trend analysis | COMMENT |
| LOW | tools/fdfs_replication_status.c | 41 | #include <errno.h> | COMMENT |
| LOW | tools/fdfs_sync_check.c | 21 | COMMENT | |
| LOW | tools/fdfs_config_validator.h | 21 | #ifdef __cplusplus | COMMENT |
| LOW | tools/fdfs_import.c | 41 | COMMENT | |
| LOW | tools/fdfs_metadata_bulk.c | 41 | #include <time.h> | COMMENT |
| LOW | tools/fdfs_log_analyzer.c | 41 | * | COMMENT |
| LOW | tools/fdfs_config_generator.c | 21 | #include <sys/stat.h> | COMMENT |
| LOW | tools/fdfs_network_diag.c | 21 | #include <sys/socket.h> | COMMENT |
| LOW | tools/fdfs_file_verify.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_search.c | 41 | #include <getopt.h> | COMMENT |
| LOW | tools/fdfs_benchmark.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_cluster_mgr.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_batch_delete.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_replication.c | 1 | /** | COMMENT |
| LOW | tools/fdfs_rebalance.c | 41 | COMMENT | |
| LOW | tools/fdfs_quota.c | 21 | * - Soft Quota: Warning threshold, allows operations but alerts administrators | COMMENT |
| LOW | tools/fdfs_capacity_planner.c | 21 | #include <sys/stat.h> | COMMENT |
| LOW | …r/dockerfile_local-v6.0.9/fastdfs-conf/setting_conf.sh | 41 | # or two different types of inner (intranet) IPs | COMMENT |
| LOW | ruby_client/examples/upload_buffer.rb | 1 | #!/usr/bin/env ruby | COMMENT |
| LOW | ruby_client/examples/metadata_example.rb | 1 | #!/usr/bin/env ruby | COMMENT |
| LOW | ruby_client/examples/basic_usage.rb | 1 | #!/usr/bin/env ruby | COMMENT |
| LOW | ruby_client/lib/fastdfs.rb | 1 | # FastDFS Ruby Client | COMMENT |
| LOW | ruby_client/lib/fastdfs.rb | 21 | # max_conns: 10, | COMMENT |
| LOW | ruby_client/lib/fastdfs.rb | 61 | COMMENT | |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 1 | # FastDFS Connection Pool Management | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 21 | # | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 41 | # Store the server address | COMMENT |
| 556 more matches not shown… | ||||
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python_client/fdfs/protocol.py | 50 | Decodes a FastDFS protocol header from a byte array. The header must be exactly 10 bytes long. Ar | STRING |
| HIGH | python_client/fdfs/protocol.py | 75 | Splits a FastDFS file ID into its components. A file ID has the format: "groupName/path/to/file" For e | STRING |
| HIGH | python_client/fdfs/protocol.py | 196 | Extracts and validates the file extension from a filename. The extension is extracted without the leading | STRING |
| HIGH | python_client/fdfs/protocol.py | 225 | Reads the entire contents of a file from the filesystem. Args: filename: Path to the file to read | STRING |
| HIGH | python_client/fdfs/client.py | 112 | Uploads a file from the local filesystem to FastDFS. Args: local_filename: Path to | STRING |
| HIGH | python_client/fdfs/client.py | 132 | Uploads data from a byte buffer to FastDFS. Args: data: File content as bytes | STRING |
| HIGH | python_client/fdfs/client.py | 152 | Uploads an appender file that can be modified later. Appender files support append, modify, an | STRING |
| HIGH | python_client/fdfs/client.py | 174 | Uploads an appender file from buffer. Args: data: File content as bytes | STRING |
| HIGH | python_client/fdfs/client.py | 193 | Downloads a file from FastDFS and returns its content. Args: file_id: The file ID | STRING |
| HIGH | python_client/fdfs/client.py | 212 | Downloads a specific range of bytes from a file. Args: file_id: The file ID to dow | STRING |
| HIGH | python_client/fdfs/client.py | 286 | Retrieves metadata for a file. Args: file_id: The file ID Ret | STRING |
| HIGH | python_client/fdfs/client.py | 305 | Retrieves file information including size, create time, and CRC32. Args: file_id: | STRING |
| HIGH | python_client/fdfs/client.py | 324 | Checks if a file exists on the storage server. Args: file_id: The file ID to check | STRING |
| HIGH | python_client/fdfs/connection.py | 71 | Reads up to 'size' bytes from the server. This method may return fewer bytes than requested. | STRING |
| HIGH | python_client/fdfs/connection.py | 105 | Reads exactly 'size' bytes from the server. This method blocks until all bytes are received or | STRING |
| HIGH | python_client/fdfs/connection.py | 229 | Retrieves a connection from the pool or creates a new one. It prefers reusing existing idle co | STRING |
| HIGH | python_client/fdfs/connection.py | 272 | Creates a new TCP connection to a server. Args: addr: Server address in "host:port | STRING |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | rust_client/examples/appender_example.rs | 23 | // Step 1: Configure and create client | COMMENT |
| LOW | rust_client/examples/metadata_example.rs | 26 | // Step 1: Configure and create client | COMMENT |
| LOW | rust_client/examples/partial_download_example.rs | 35 | /// Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/partial_download_example.rs | 46 | /// Step 2: Prepare Test File | COMMENT |
| LOW | rust_client/examples/batch_operations_example.rs | 38 | // Step 1: Configure and Create Client | COMMENT |
| LOW⚡ | rust_client/examples/basic_usage.rs | 22 | // Step 1: Configure the client | COMMENT |
| LOW⚡ | rust_client/examples/basic_usage.rs | 29 | // Step 2: Create the client instance | COMMENT |
| LOW | rust_client/examples/basic_usage.rs | 80 | // Step 3: Close the client | COMMENT |
| LOW | rust_client/examples/error_handling_example.rs | 37 | // Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/concurrent_operations_example.rs | 37 | // Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/slave_file_example.rs | 33 | /// Step 1: Configure and Create Client | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 431 | // Step 1: Validate file | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 439 | // Step 2: Check connection | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 448 | // Step 3: Perform upload with error handling | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 927 | // Step 1: Connect with error handling | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 935 | // Step 2: Create and upload valid file | COMMENT |
| LOW | examples/php_examples/08_error_handling.php | 953 | // Step 3: Download file | COMMENT |
| LOW | csharp_client/examples/BatchOperationsExample.cs | 77 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/BatchOperationsExample.cs | 124 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/AppenderFileExample.cs | 69 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/AppenderFileExample.cs | 115 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/CancellationExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/CancellationExample.cs | 108 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/ErrorHandlingExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/ErrorHandlingExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/SlaveFileExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/SlaveFileExample.cs | 118 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/ConcurrentOperationsExample.cs | 76 | // Step 1: Create Client Configuration for High Concurrency | COMMENT |
| LOW | csharp_client/examples/ConcurrentOperationsExample.cs | 122 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/StreamingExample.cs | 84 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/StreamingExample.cs | 121 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 47 | // Step 1: Create client configuration | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 77 | // Step 2: Initialize the FastDFS client | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 85 | // Step 3: Upload a file | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 106 | // Step 4: Get file information | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 117 | // Step 5: Download the file | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 129 | // Step 6: Download to a local file | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 138 | // Step 7: Download a partial file range | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 148 | // Step 8: Delete the file | COMMENT |
| LOW | csharp_client/examples/FileInfoExample.cs | 77 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/FileInfoExample.cs | 119 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/UploadBufferExample.cs | 80 | // Step 1: Create client configuration | COMMENT |
| LOW | csharp_client/examples/UploadBufferExample.cs | 138 | // Step 2: Initialize the FastDFS client | COMMENT |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 75 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/PartialDownloadExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/PartialDownloadExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | rust_client/examples/appender_example.rs | 23 | // Step 1: Configure and create client | COMMENT |
| LOW | rust_client/examples/metadata_example.rs | 26 | // Step 1: Configure and create client | COMMENT |
| LOW | rust_client/examples/partial_download_example.rs | 35 | /// Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/partial_download_example.rs | 46 | /// Step 2: Prepare Test File | COMMENT |
| LOW | rust_client/examples/batch_operations_example.rs | 38 | // Step 1: Configure and Create Client | COMMENT |
| LOW⚡ | rust_client/examples/basic_usage.rs | 22 | // Step 1: Configure the client | COMMENT |
| LOW⚡ | rust_client/examples/basic_usage.rs | 29 | // Step 2: Create the client instance | COMMENT |
| LOW | rust_client/examples/basic_usage.rs | 80 | // Step 3: Close the client | COMMENT |
| LOW | rust_client/examples/error_handling_example.rs | 37 | // Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/concurrent_operations_example.rs | 37 | // Step 1: Configure and Create Client | COMMENT |
| LOW | rust_client/examples/slave_file_example.rs | 33 | /// Step 1: Configure and Create Client | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 431 | // Step 1: Validate file | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 439 | // Step 2: Check connection | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 448 | // Step 3: Perform upload with error handling | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 927 | // Step 1: Connect with error handling | COMMENT |
| LOW⚡ | examples/php_examples/08_error_handling.php | 935 | // Step 2: Create and upload valid file | COMMENT |
| LOW | examples/php_examples/08_error_handling.php | 953 | // Step 3: Download file | COMMENT |
| LOW | csharp_client/examples/BatchOperationsExample.cs | 77 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/BatchOperationsExample.cs | 124 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/AppenderFileExample.cs | 69 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/AppenderFileExample.cs | 115 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/CancellationExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/CancellationExample.cs | 108 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/ErrorHandlingExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/ErrorHandlingExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/SlaveFileExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/SlaveFileExample.cs | 118 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/ConcurrentOperationsExample.cs | 76 | // Step 1: Create Client Configuration for High Concurrency | COMMENT |
| LOW | csharp_client/examples/ConcurrentOperationsExample.cs | 122 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/StreamingExample.cs | 84 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/StreamingExample.cs | 121 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 47 | // Step 1: Create client configuration | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 77 | // Step 2: Initialize the FastDFS client | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 85 | // Step 3: Upload a file | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 106 | // Step 4: Get file information | COMMENT |
| LOW | csharp_client/examples/BasicExample.cs | 117 | // Step 5: Download the file | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 129 | // Step 6: Download to a local file | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 138 | // Step 7: Download a partial file range | COMMENT |
| LOW⚡ | csharp_client/examples/BasicExample.cs | 148 | // Step 8: Delete the file | COMMENT |
| LOW | csharp_client/examples/FileInfoExample.cs | 77 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/FileInfoExample.cs | 119 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/UploadBufferExample.cs | 80 | // Step 1: Create client configuration | COMMENT |
| LOW | csharp_client/examples/UploadBufferExample.cs | 138 | // Step 2: Initialize the FastDFS client | COMMENT |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 75 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| LOW | csharp_client/examples/PartialDownloadExample.cs | 74 | // Step 1: Create Client Configuration | COMMENT |
| LOW | csharp_client/examples/PartialDownloadExample.cs | 116 | // Step 2: Initialize the FastDFS Client | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | ruby_client/examples/basic_usage.rb | 132 | # Check if file exists | COMMENT |
| LOW⚡ | ruby_client/lib/fastdfs/connection_pool.rb | 288 | # Check if already closed | COMMENT |
| LOW⚡ | ruby_client/lib/fastdfs/connection_pool.rb | 292 | # Check if socket exists | COMMENT |
| LOW⚡ | ruby_client/lib/fastdfs/connection_pool.rb | 296 | # Check if socket is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 74 | # Check if connection is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 92 | # Check if connection was closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 136 | # Check if connection is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 150 | # Check if connection was closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 189 | # Check if connection is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 211 | # Check if connection was closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 254 | # Check if already closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 406 | # Check if pool is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 423 | # Check if we have available connections | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 430 | # Check if connection is still alive | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 452 | # Check if we can create a new connection | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 472 | # Check if count decreased | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 541 | # Check if address is valid | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 545 | # Check if pool is closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 556 | # Check if connection is alive | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 584 | # Check if pool is full | COMMENT |
| LOW | ruby_client/lib/fastdfs/connection_pool.rb | 615 | # Check if already closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/operations.rb | 78 | # Check if file exists | COMMENT |
| LOW | ruby_client/lib/fastdfs/operations.rb | 84 | # Read file content | COMMENT |
| LOW | ruby_client/lib/fastdfs/operations.rb | 274 | # Write file content | COMMENT |
| LOW | ruby_client/lib/fastdfs/client_config.rb | 234 | # Check if other is a ClientConfig | COMMENT |
| LOW | ruby_client/lib/fastdfs/protocol.rb | 252 | # Check if slash exists | COMMENT |
| LOW | ruby_client/lib/fastdfs/client.rb | 191 | # Check if client is closed before proceeding | COMMENT |
| LOW | ruby_client/lib/fastdfs/client.rb | 774 | # Check if already closed | COMMENT |
| LOW | ruby_client/lib/fastdfs/client.rb | 844 | # Check if config is nil | COMMENT |
| LOW | ruby_client/lib/fastdfs/client.rb | 850 | # Check if config is a ClientConfig instance | COMMENT |
| LOW | benchmarks/scripts/run_all_benchmarks.sh | 80 | # Check if benchmark binaries exist | COMMENT |
| LOW | benchmarks/scripts/run_all_benchmarks.sh | 96 | # Check if tracker is reachable | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | ruby_client/lib/fastdfs/connection_pool.rb | 3 | # This module handles TCP connections to FastDFS servers with connection pooling, | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/errors.rb | 3 | # This module defines all error types and error handling utilities for the | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/errors.rb | 506 | # Create a generic protocol error with the code | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/operations.rb | 3 | # This module implements all file operations for the FastDFS client, | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/operations.rb | 24 | # This class handles all file operations including upload, download, delete, | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/client_config.rb | 3 | # This module defines the configuration class for FastDFS clients. | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/types.rb | 3 | # This module defines all protocol-level constants, command codes, and | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/types.rb | 290 | # This class represents a storage server in the FastDFS cluster. | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/types.rb | 381 | # This class represents the FastDFS protocol header that appears at the | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/types.rb | 459 | # This class represents the response from an upload operation. | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/protocol.rb | 3 | # This module implements the FastDFS protocol for communication with tracker | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/protocol.rb | 21 | # This module provides low-level protocol operations for building requests | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/client.rb | 5 | # This module provides a Ruby client library for FastDFS, enabling Ruby applications | COMMENT |
| MEDIUM | ruby_client/lib/fastdfs/client.rb | 57 | # This class provides a high-level Ruby API for FastDFS operations including | COMMENT |
| MEDIUM | python_client/tests/test_connection.py | 18 | # Create a simple echo server for testing | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | cpp_client/README.md | 94 | metadata["author"] = "John Doe"; | CODE |
| LOW | cpp_client/examples/metadata_example.cpp | 31 | metadata["author"] = "John Doe"; | CODE |
| LOW | cpp_client/examples/advanced_metadata_example.cpp | 144 | initial_metadata["author"] = "John Doe"; | CODE |
| LOW | ruby_client/README.md | 93 | 'author' => 'John Doe', | CODE |
| LOW | ruby_client/examples/upload_buffer.rb | 118 | 'author' => 'John Doe', | CODE |
| LOW | ruby_client/examples/metadata_example.rb | 82 | 'author' => 'John Doe', | CODE |
| LOW | ruby_client/lib/fastdfs/client.rb | 188 | # metadata = { 'author' => 'John Doe', 'date' => '2025-01-01' } | COMMENT |
| LOW | ruby_client/lib/fastdfs/client.rb | 620 | # metadata = { 'author' => 'John Doe', 'date' => '2025-01-01' } | COMMENT |
| LOW | groovy_client/README.md | 103 | 'author': 'John Doe', | CODE |
| LOW | rust_client/tests/protocol_tests.rs | 236 | metadata.insert("author".to_string(), "John Doe".to_string()); | CODE |
| LOW | rust_client/examples/metadata_example.rs | 39 | metadata.insert("author".to_string(), "John Doe".to_string()); | CODE |
| LOW | rust_client/src/protocol.rs | 287 | metadata.insert("author".to_string(), "John Doe".to_string()); | CODE |
| LOW | rust_client/src/protocol.rs | 295 | assert_eq!(decoded.get("author"), Some(&"John Doe".to_string())); | CODE |
| LOW | go_client/IMPLEMENTATION_SUMMARY.md | 205 | "author": "John Doe", | CODE |
| LOW | go_client/README.md | 91 | "author": "John Doe", | CODE |
| LOW | go_client/client_test.go | 197 | "author": "John Doe", | CODE |
| LOW | go_client/examples/metadata/main.go | 31 | "author": "John Doe", | CODE |
| LOW | examples/php_examples/03_metadata_operations.php | 238 | 'author' => 'John Doe', | CODE |
| LOW | csharp_client/README.md | 92 | { "author", "John Doe" }, | CODE |
| LOW | csharp_client/examples/MetadataExample.cs | 59 | { "author", "John Doe" }, | CODE |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 198 | { "owner.name", "John Doe" }, | CODE |
| LOW | csharp_client/examples/AdvancedMetadataExample.cs | 510 | { "photographer", "John Doe" }, | CODE |
| LOW | typescript_client/tests/protocol.test.ts | 78 | author: 'John Doe', | CODE |
| LOW | typescript_client/examples/metadata-example.ts | 30 | author: 'John Doe', | CODE |
| LOW | python_client/README.md | 87 | 'author': 'John Doe', | CODE |
| LOW | python_client/README.md | 134 | new_meta = {'author': 'Jane Doe'} | CODE |
| LOW | python_client/tests/test_protocol.py | 77 | "author": "John Doe", | CODE |
| LOW | python_client/examples/meta_example.py | 32 | 'author': 'John Doe', | CODE |
| LOW | javascript_client/README.md | 105 | author: 'John Doe', | CODE |
| LOW | javascript_client/README.md | 219 | author: 'John Doe', | CODE |
| LOW | javascript_client/examples/02_metadata_operations.js | 41 | author: 'John Doe', | CODE |
| LOW | javascript_client/examples/01_basic_upload.js | 53 | author: 'John Doe', | CODE |
| LOW | javascript_client/src/client.js | 179 | * author: 'John Doe', | COMMENT |
| LOW | javascript_client/src/client.js | 566 | * author: 'John Doe', | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | benchmarks/scripts/generate_report.py | 12 | CODE | |
| LOW | benchmarks/scripts/generate_report.py | 13 | CODE | |
| LOW | benchmarks/scripts/compare_versions.py | 11 | CODE | |
| LOW | python_client/tests/test_client.py | 6 | CODE | |
| LOW | python_client/tests/test_client.py | 6 | CODE | |
| LOW | python_client/tests/test_client.py | 8 | CODE | |
| LOW | python_client/fdfs/protocol.py | 8 | CODE | |
| LOW | python_client/fdfs/__init__.py | 24 | CODE | |
| LOW | python_client/fdfs/__init__.py | 24 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 25 | CODE | |
| LOW | python_client/fdfs/__init__.py | 44 | CODE | |
| LOW | python_client/fdfs/__init__.py | 44 | CODE | |
| LOW | python_client/fdfs/__init__.py | 44 | CODE | |
| LOW | python_client/fdfs/types.py | 11 | CODE | |
| LOW | python_client/fdfs/operations.py | 11 | CODE | |
| LOW | python_client/fdfs/connection.py | 12 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | cpp_client/examples/file_info_example.cpp | 349 | // This is important for robust applications. | COMMENT |
| MEDIUM | csharp_client/examples/BatchOperationsExample.cs | 143 | // individual uploads because they can leverage connection | COMMENT |
| MEDIUM | csharp_client/examples/CancellationExample.cs | 1051 | // cancellation propagation is important for building robust | COMMENT |
| MEDIUM | csharp_client/examples/PerformanceExample.cs | 13 | // applications that efficiently utilize system resources and provide | COMMENT |
| MEDIUM | csharp_client/examples/IntegrationExample.cs | 13 | // that leverage ASP.NET Core's dependency injection, configuration, and | COMMENT |
| MEDIUM | csharp_client/examples/ErrorHandlingExample.cs | 11 | // and implement robust error handling patterns for production applications. | COMMENT |
| MEDIUM | csharp_client/examples/ConcurrentOperationsExample.cs | 10 | // pool behavior under load. It shows how to effectively utilize the FastDFS | COMMENT |
| MEDIUM | csharp_client/examples/FileInfoExample.cs | 10 | // monitoring, and auditing. It shows how to retrieve and utilize file | COMMENT |
| MEDIUM | csharp_client/examples/FileInfoExample.cs | 15 | // file characteristics. Understanding file information helps build robust | COMMENT |
| MEDIUM | csharp_client/examples/UploadBufferExample.cs | 381 | // - Can leverage OS file system caching | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | examples/php_examples/05_slave_file.php | 354 | function demonstrateImageThumbnails($tracker) { | CODE |
| LOW | examples/php_examples/05_slave_file.php | 435 | function demonstrateDocumentConversion($tracker) { | CODE |
| LOW | examples/php_examples/08_error_handling.php | 103 | public function getOrThrow() { | CODE |
| LOW | examples/php_examples/08_error_handling.php | 768 | function demonstrateValidationErrors() { | CODE |
| LOW | examples/php_examples/08_error_handling.php | 814 | function demonstrateTransactionRollback() { | CODE |
| LOW | examples/php_examples/08_error_handling.php | 878 | function demonstrateGracefulDegradation() { | CODE |
| LOW⚡ | examples/php_examples/08_error_handling.php | 919 | function demonstrateCompleteWorkflow() { | CODE |
| LOW | examples/php_examples/03_metadata_operations.php | 233 | function demonstrateMergeVsOverwrite($tracker, $fileId) { | CODE |
| LOW | …les/php_examples/07_connection_pool_error_handling.php | 724 | function demonstrateConnectionPool() { | CODE |
| LOW | benchmarks/scripts/generate_report.py | 381 | def generate_download_section(data): | STRING |
| LOW | benchmarks/scripts/generate_report.py | 433 | def generate_concurrent_section(data): | STRING |
| LOW | benchmarks/scripts/generate_report.py | 498 | def generate_small_files_section(data): | STRING |
| LOW | benchmarks/scripts/generate_report.py | 550 | def generate_large_files_section(data): | STRING |
| LOW | benchmarks/scripts/generate_report.py | 602 | def generate_metadata_section(data): | STRING |
| LOW | python_client/tests/test_protocol.py | 25 | def test_encode_decode_header(self): | CODE |
| LOW | python_client/tests/test_protocol.py | 39 | def test_decode_header_short_data(self): | CODE |
| LOW | python_client/tests/test_protocol.py | 52 | def test_split_file_id_invalid(self): | CODE |
| LOW | python_client/tests/test_protocol.py | 74 | def test_encode_decode_metadata(self): | CODE |
| LOW | python_client/tests/test_protocol.py | 91 | def test_encode_metadata_empty(self): | CODE |
| LOW | python_client/tests/test_protocol.py | 99 | def test_decode_metadata_empty(self): | CODE |
| LOW | python_client/tests/test_connection.py | 50 | def test_connection_last_used(self): | CODE |
| LOW | python_client/tests/test_connection.py | 99 | def test_pool_close_idempotent(self): | CODE |
| LOW | python_client/tests/test_integration.py | 35 | def test_upload_download_delete_cycle(self): | CODE |
| LOW | python_client/tests/test_integration.py | 55 | def test_upload_file_from_disk(self): | CODE |
| LOW | python_client/tests/test_client.py | 28 | def test_config_custom_values(self): | CODE |
| LOW | python_client/tests/test_client.py | 49 | def test_client_creation_valid_config(self): | CODE |
| LOW | python_client/tests/test_client.py | 59 | def test_client_creation_invalid_config(self): | CODE |
| LOW | python_client/tests/test_client.py | 83 | def test_client_close_idempotent(self): | CODE |
| LOW | python_client/tests/test_client.py | 91 | def test_client_context_manager(self): | CODE |
| LOW | python_client/fdfs/operations.py | 297 | def _get_download_storage_server(self, group_name: str, remote_filename: str) -> StorageServer: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | benchmarks/scripts/generate_report.py | 230 | print(f"Error: File not found: {input_file}", file=sys.stderr) | CODE |
| MEDIUM | benchmarks/scripts/generate_report.py | 233 | print(f"Error: Invalid JSON in {input_file}: {e}", file=sys.stderr) | CODE |
| MEDIUM | benchmarks/scripts/compare_versions.py | 20 | print(f"Error: File not found: {filepath}", file=sys.stderr) | CODE |
| MEDIUM | benchmarks/scripts/compare_versions.py | 23 | print(f"Error: Invalid JSON in {filepath}: {e}", file=sys.stderr) | CODE |
| LOW | python_client/examples/basic_usage.py | 68 | except Exception as e: | CODE |
| LOW | python_client/examples/meta_example.py | 84 | except Exception as e: | CODE |
| LOW | python_client/examples/appender_example.py | 61 | except Exception as e: | CODE |
| LOW | python_client/fdfs/client.py | 342 | except Exception: | CODE |
| LOW | python_client/fdfs/operations.py | 104 | except Exception as e: | CODE |
| LOW | python_client/fdfs/operations.py | 250 | except Exception as e: | CODE |
| LOW | python_client/fdfs/operations.py | 369 | except Exception as e: | CODE |
| LOW | python_client/fdfs/connection.py | 67 | except Exception as e: | CODE |
| LOW | python_client/fdfs/connection.py | 101 | except Exception as e: | CODE |
| LOW | python_client/fdfs/connection.py | 138 | except Exception as e: | CODE |
| LOW | python_client/fdfs/connection.py | 296 | except Exception as e: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| HIGH | python_client/fdfs/operations.py | 165 | except: | CODE |
| HIGH | python_client/fdfs/connection.py | 151 | except: | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| MEDIUM | rust_client/examples/streaming_example.rs | 335 | /* For demonstration purposes - in production, use file streams */ | COMMENT |
| MEDIUM | rust_client/examples/streaming_example.rs | 364 | /* For demonstration purposes - in production, use file streams */ | COMMENT |
| MEDIUM | rust_client/examples/advanced_metadata_example.rs | 375 | let image_data = b"Fake image data for demonstration purposes..."; | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | benchmarks/scripts/compare_versions.py | 58 | CODE | |
| LOW | benchmarks/scripts/compare_versions.py | 126 | CODE | |
| LOW | python_client/fdfs/connection.py | 38 | CODE | |
| LOW | python_client/fdfs/connection.py | 104 | CODE | |
| LOW | python_client/fdfs/errors.py | 139 | CODE |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | csharp_client/FastDFSClient.cs | 41 | /// Example usage: | COMMENT |
| LOW | csharp_client/FastDFSClientConfig.cs | 28 | /// Example usage: | COMMENT |
| Severity | File | Line | Snippet | Context |
|---|---|---|---|---|
| LOW | python_client/fdfs/__init__.py | 50 | __all__ = [ | CODE |
| LOW | python_client/fdfs/operations.py | 409 | def set_metadata(self, file_id: str, metadata: Dict[str, str], flag: MetadataFlag) -> None: | CODE |