[ https://issues.apache.org/jira/browse/GEODE-8572?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
ASF GitHub Bot updated GEODE-8572: ---------------------------------- Labels: GeodeOperationAPI pull-request-available (was: GeodeOperationAPI) > LogExporter throws if a directory matches its file selector > ----------------------------------------------------------- > > Key: GEODE-8572 > URL: https://issues.apache.org/jira/browse/GEODE-8572 > Project: Geode > Issue Type: Bug > Components: gfsh > Affects Versions: 1.13.0 > Reporter: Dale Emery > Priority: Major > Labels: GeodeOperationAPI, pull-request-available > > {{LogExporter}} tries to read and export any directory entry whose name is > accepted by its log file selector predicate. The predicate accepts any entry > whose name, when converted to lower case, contains ".log". If one of those > entries is directory, the predicate accepts it anyway. When {{LogExporter}} > attempts to create a {{FileReader}} read it, the {{FileReader}} constructor > throws {{FileNotFoundException}}. > There is a stat file selector predicate that works similarly. > {{LogExporter}}'s log and stat file selector predicates should accept only > files, and not directories. And perhaps the should accept only files whose > names _end_ in the appropriate extension, rather than _containing_ the > characters. The predicates are defined in {{LogExporter}}'s > {{findLogFiles()}} and {{findStatFiles()}} methods. > I discovered this defect by running {{LogExporterIntegrationTest}} on macOS. > Each test's preparation writes some to-be-exported files into a temporary > directory that, on macOS, may contain numerous other files and directories. > One of those directories (e.g. > /var/folders/yz/6y59fxln38d7lf2jxng1zgg40000gn/T/com.apple.LoginUserService), > which matches the {{LogExporter}}'s predicate. > These tests should also be changed to write their to-be-exported files to a > directory that is known to be empty. -- This message was sent by Atlassian Jira (v8.3.4#803005)