Github user hbdeshmukh commented on a diff in the pull request:

    https://github.com/apache/incubator-quickstep/pull/99#discussion_r77946830
  
    --- Diff: relational_operators/TextScanOperator.cpp ---
    @@ -91,6 +91,12 @@ bool TextScanOperator::getAllWorkOrders(
       if (blocking_dependencies_met_ && !work_generated_) {
         for (const std::string &file : files) {
           // Use standard C libary to retrieve the file size.
    +
    +      // Check file permissions before trying to open it
    +      int rval = access(file.c_str(), R_OK);
    --- End diff --
    
    Hi @tarunbansal - This is a neat change. 
    
    The ``access`` function may not be available on all the platforms that are 
used in Quickstep. On unix, it comes from the header ``unistd.h``. 
    
    To solve such issues, typically we check the availability of this header 
file using CMake. If the function is available, we create a variable, e.g. in 
this case it could be QUICKSTEP_HAVE_UNISTD and guard this line with ``#ifdef 
QUICKSTEP_HAVE_UNISTD`` and ``#endif QUICKSTEP_HAVE_UNISTD``. You can dig 
around in the code to find such usage patterns. 


---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at infrastruct...@apache.org or file a JIRA ticket
with INFRA.
---

Reply via email to