xiangfu0 opened a new pull request, #18660: URL: https://github.com/apache/pinot/pull/18660
## Summary - Add a controller config to control whether `/ingestFromURI` can read local filesystem URIs - Disable local filesystem URI ingestion by default - Keep existing local-file ingestion coverage by explicitly enabling the config in that test ## User Manual Local filesystem URI ingestion through the controller is disabled by default. For trusted development or test deployments that still need local file URI ingestion, enable: ```properties controller.ingestFromURI.allowLocalFileSystem=true ``` Remote URI ingestion remains supported for configured non-local filesystem schemes. Example: ```bash curl -X POST 'http://localhost:9000/ingestFromURI?tableNameWithType=myTable_OFFLINE&batchConfigMapStr={...}&sourceURIStr=s3://bucket/path/data.csv' ``` ## Sample table config / query Sample table config for an offline table using URI ingestion: ```json { "tableName": "myTable", "tableType": "OFFLINE", "segmentsConfig": { "schemaName": "myTable", "replication": "1" }, "tenants": { "broker": "DefaultTenant", "server": "DefaultTenant" }, "tableIndexConfig": { "loadMode": "MMAP" } } ``` Sample query after ingestion: ```sql SELECT COUNT(*) FROM myTable_OFFLINE; ``` ## Tests - `./mvnw -pl pinot-controller -Dtest=FileIngestionHelperTest test` - `./mvnw -pl pinot-controller -Dtest=PinotIngestionRestletResourceStatelessTest test` - `./mvnw spotless:apply -pl pinot-controller` - `./mvnw license:format -pl pinot-controller` - `./mvnw checkstyle:check -pl pinot-controller` - `./mvnw license:check -pl pinot-controller` -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
