Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.1.0, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder2.1/1810/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.3.2, Please check CI http://136.243.101.176:8080/job/carbondataprbuilder2.3/10069/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Failed with Spark 2.2.1, Please check CI http://95.216.28.178:8080/job/ApacheCarbonPRBuilder1/2020/ --- |
In reply to this post by qiuchenjian-2
Github user xubo245 commented on the issue:
https://github.com/apache/carbondata/pull/2991 @BJangir Please rebase it. --- |
In reply to this post by qiuchenjian-2
Github user KanakaKumar commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r243360358 --- Diff: store/CSDK/test/main.cpp --- @@ -665,6 +699,208 @@ bool readFromS3(JNIEnv *env, char *path, char *argv[]) { printResult(env, reader); } +TEST(CSDKTest,tryCatchException) { + bool gotExp=tryCatchException(env); + EXPECT_TRUE(gotExp); +} + + +TEST(CSDKTest,tryCarbonRowException) { + char *smallFilePath = "../../../../resources/carbondata"; + try { + bool result = tryCarbonRowException(env, smallFilePath);; + EXPECT_TRUE(result) << "Expected Exception as No Index File" << result; + } catch (runtime_error e) { + EXPECT_TRUE(true); + } +} + +TEST(CSDKTest,testCarbonProperties) { + try { + bool result = testCarbonProperties(env); + EXPECT_TRUE(result) << "Carbon set properties not working "; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while setting carbon properties "; + } +} + +TEST(CSDKTest,testWriteData) { + try { + bool result =testWriteData(env, "./data", my_argc, my_argv); + result = result && testWriteData(env, "./data", my_argc, my_argv); + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while data loading"; + } +} + +TEST(CSDKTest,readFromLocalWithoutProjection) { + try { + char *smallFilePath = "./data_withoutpro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithoutProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "Without Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During without projection selection"; + } +} + +TEST(CSDKTest,readFromLocalWithProjection) { + try { + char *smallFilePath = "./data_pro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "With Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During With projection selection"; + } +} + + +TEST(CSDKTest,readSchemaWithoutValidation) { + try { + char *path = "./data_readPath"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, false); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + + +TEST(CSDKTest,readSchemaWithValidation) { + try { + char *path = "./data_readPathWithValidation"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, true); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema Or validate from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + +TEST(CSDKTest,testReadNextRowWthtVector) { + try { + int printNum = 32000; + char *path = "./data_forVector"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVector= testReadNextRow(env, path, printNum, my_argv, 0, true); + EXPECT_TRUE(readresultWithVector) << "Vector reading is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Vector read"; + } +} + + +TEST(CSDKTest,testReadNextRowWthoutVector) { + try { + int printNum = 32000; + char *path = "./data_forCarbonReader"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVectorfalse=testReadNextRow(env, path, printNum, my_argv, 0, false); + EXPECT_TRUE(readresultWithVectorfalse) << "Carbon Reader (Vector=false) is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Carbon Read"; + } +} + + +TEST(CSDKTest,testReadNextBatchRowWithVector) { + try { + int printNum = 32000; + int batch = 32000; + char *path = "./data_forCarbonReader"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVector=testReadNextBatchRow(env, path, batch, printNum, my_argv, 0, true); + EXPECT_TRUE(readresultWithVector) << "Vector Reader With Batch is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { --- End diff -- Should we log the runtime_error to observe the failures in CI ? --- |
In reply to this post by qiuchenjian-2
Github user KanakaKumar commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r243361889 --- Diff: store/CSDK/test/main.cpp --- @@ -665,6 +699,208 @@ bool readFromS3(JNIEnv *env, char *path, char *argv[]) { printResult(env, reader); } +TEST(CSDKTest,tryCatchException) { + bool gotExp=tryCatchException(env); + EXPECT_TRUE(gotExp); +} + + +TEST(CSDKTest,tryCarbonRowException) { + char *smallFilePath = "../../../../resources/carbondata"; + try { + bool result = tryCarbonRowException(env, smallFilePath);; + EXPECT_TRUE(result) << "Expected Exception as No Index File" << result; + } catch (runtime_error e) { + EXPECT_TRUE(true); + } +} + +TEST(CSDKTest,testCarbonProperties) { + try { + bool result = testCarbonProperties(env); + EXPECT_TRUE(result) << "Carbon set properties not working "; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while setting carbon properties "; + } +} + +TEST(CSDKTest,testWriteData) { + try { + bool result =testWriteData(env, "./data", my_argc, my_argv); + result = result && testWriteData(env, "./data", my_argc, my_argv); + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while data loading"; + } +} + +TEST(CSDKTest,readFromLocalWithoutProjection) { + try { + char *smallFilePath = "./data_withoutpro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithoutProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "Without Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During without projection selection"; + } +} + +TEST(CSDKTest,readFromLocalWithProjection) { + try { + char *smallFilePath = "./data_pro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "With Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During With projection selection"; + } +} + + +TEST(CSDKTest,readSchemaWithoutValidation) { + try { + char *path = "./data_readPath"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, false); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + + +TEST(CSDKTest,readSchemaWithValidation) { + try { + char *path = "./data_readPathWithValidation"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, true); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema Or validate from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + +TEST(CSDKTest,testReadNextRowWthtVector) { + try { + int printNum = 32000; + char *path = "./data_forVector"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVector= testReadNextRow(env, path, printNum, my_argv, 0, true); + EXPECT_TRUE(readresultWithVector) << "Vector reading is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Vector read"; + } +} + + +TEST(CSDKTest,testReadNextRowWthoutVector) { + try { + int printNum = 32000; + char *path = "./data_forCarbonReader"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVectorfalse=testReadNextRow(env, path, printNum, my_argv, 0, false); --- End diff -- At present all the methods in main.cpp are printing the results in the console just for local verification. I think we should leave main.cpp as an example file and add new test files for test with detailed assertions. --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.1.0, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder2.1/1914/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.3.2, Please check CI http://136.243.101.176:8080/job/carbondataprbuilder2.3/10168/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.2.1, Please check CI http://95.216.28.178:8080/job/ApacheCarbonPRBuilder1/2125/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.1.0, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder2.1/1938/ --- |
In reply to this post by qiuchenjian-2
Github user BJangir commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r243915655 --- Diff: store/CSDK/test/main.cpp --- @@ -665,6 +699,208 @@ bool readFromS3(JNIEnv *env, char *path, char *argv[]) { printResult(env, reader); } +TEST(CSDKTest,tryCatchException) { + bool gotExp=tryCatchException(env); + EXPECT_TRUE(gotExp); +} + + +TEST(CSDKTest,tryCarbonRowException) { + char *smallFilePath = "../../../../resources/carbondata"; + try { + bool result = tryCarbonRowException(env, smallFilePath);; + EXPECT_TRUE(result) << "Expected Exception as No Index File" << result; + } catch (runtime_error e) { + EXPECT_TRUE(true); + } +} + +TEST(CSDKTest,testCarbonProperties) { + try { + bool result = testCarbonProperties(env); + EXPECT_TRUE(result) << "Carbon set properties not working "; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while setting carbon properties "; + } +} + +TEST(CSDKTest,testWriteData) { + try { + bool result =testWriteData(env, "./data", my_argc, my_argv); + result = result && testWriteData(env, "./data", my_argc, my_argv); + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected while data loading"; + } +} + +TEST(CSDKTest,readFromLocalWithoutProjection) { + try { + char *smallFilePath = "./data_withoutpro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithoutProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "Without Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During without projection selection"; + } +} + +TEST(CSDKTest,readFromLocalWithProjection) { + try { + char *smallFilePath = "./data_pro"; + bool result =testWriteData(env, smallFilePath, my_argc, my_argv); + if(result){ + bool proj_result = readFromLocalWithProjection(env, smallFilePath); + EXPECT_TRUE(proj_result) << "With Projection is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During With projection selection"; + } +} + + +TEST(CSDKTest,readSchemaWithoutValidation) { + try { + char *path = "./data_readPath"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, false); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + + +TEST(CSDKTest,readSchemaWithValidation) { + try { + char *path = "./data_readPathWithValidation"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool schema_result = readSchema(env, path, true); + EXPECT_TRUE(schema_result) << "Not Able to read readSchema Or validate from given path"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Read Schema"; + } +} + +TEST(CSDKTest,testReadNextRowWthtVector) { + try { + int printNum = 32000; + char *path = "./data_forVector"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVector= testReadNextRow(env, path, printNum, my_argv, 0, true); + EXPECT_TRUE(readresultWithVector) << "Vector reading is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Vector read"; + } +} + + +TEST(CSDKTest,testReadNextRowWthoutVector) { + try { + int printNum = 32000; + char *path = "./data_forCarbonReader"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVectorfalse=testReadNextRow(env, path, printNum, my_argv, 0, false); + EXPECT_TRUE(readresultWithVectorfalse) << "Carbon Reader (Vector=false) is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { + EXPECT_TRUE(false) << " Exception is not expected ,During Carbon Read"; + } +} + + +TEST(CSDKTest,testReadNextBatchRowWithVector) { + try { + int printNum = 32000; + int batch = 32000; + char *path = "./data_forCarbonReader"; + bool result =testWriteData(env, path, my_argc, my_argv); + if(result){ + bool readresultWithVector=testReadNextBatchRow(env, path, batch, printNum, my_argv, 0, true); + EXPECT_TRUE(readresultWithVector) << "Vector Reader With Batch is failed"; + } else { + EXPECT_TRUE(result) << "Either Data Loading Or Carbon Reader is failed"; + } + } catch (runtime_error e) { --- End diff -- Handled comments:- 1. added method convertExceptionToString for each throw which will print the exception 2. env->ExceptionDescribe(); method already prints the Exception trace. 3. Defined message after << in EXPECT_TRUE is assert message. --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.3.2, Please check CI http://136.243.101.176:8080/job/carbondataprbuilder2.3/10191/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.2.1, Please check CI http://95.216.28.178:8080/job/ApacheCarbonPRBuilder1/2147/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.1.0, Please check CI http://136.243.101.176:8080/job/ApacheCarbonPRBuilder2.1/1939/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.3.2, Please check CI http://136.243.101.176:8080/job/carbondataprbuilder2.3/10192/ --- |
In reply to this post by qiuchenjian-2
Github user CarbonDataQA commented on the issue:
https://github.com/apache/carbondata/pull/2991 Build Success with Spark 2.2.1, Please check CI http://95.216.28.178:8080/job/ApacheCarbonPRBuilder1/2148/ --- |
In reply to this post by qiuchenjian-2
Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r244068252 --- Diff: docs/csdk-guide.md --- @@ -29,6 +29,32 @@ code and without CarbonSession. In the carbon jars package, there exist a carbondata-sdk.jar, including SDK reader for C++ SDK. + +##Compile/Build CSDK +CSDK supports cmake based compilation and has dependency list in CMakeLists.txt. +<br> Prerequisites +<br>GCC >=4.8.5 +<br>Cmake >3.13 +<br>Make >=4.1 + +Steps +1. Go to CSDK folder(/opt/.../CSDK/) +2. Create build folder . (/opt/.../CSDK/build) +3. Run Command from build folder `cmake ../` +4. `make` + +Test Cases are written in [main.cpp](https://github.com/apache/carbondata/blob/master/store/CSDK/test/main.cpp) with GoogleTest C++ Framework. +if GoogleTest LIBRARY is not added then compilation of example code will fail. Please follow below steps to solve the same --- End diff -- please change if to If, LIBRARY to library. Please take care the upper/lower case. --- |
In reply to this post by qiuchenjian-2
Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r244068362 --- Diff: docs/csdk-guide.md --- @@ -29,6 +29,32 @@ code and without CarbonSession. In the carbon jars package, there exist a carbondata-sdk.jar, including SDK reader for C++ SDK. + +##Compile/Build CSDK +CSDK supports cmake based compilation and has dependency list in CMakeLists.txt. +<br> Prerequisites +<br>GCC >=4.8.5 +<br>Cmake >3.13 +<br>Make >=4.1 + +Steps +1. Go to CSDK folder(/opt/.../CSDK/) +2. Create build folder . (/opt/.../CSDK/build) +3. Run Command from build folder `cmake ../` +4. `make` + +Test Cases are written in [main.cpp](https://github.com/apache/carbondata/blob/master/store/CSDK/test/main.cpp) with GoogleTest C++ Framework. +if GoogleTest LIBRARY is not added then compilation of example code will fail. Please follow below steps to solve the same +1. Remove test/main.cpp from SOURCE_FILES of CMakeLists.txt and compile/build again. +2. Follow below Steps to configure GoogleTest Framework + * Download googleTest release (CI is complied with 1.8) https://github.com/google/googletest/releases + * Extract to folder like /opt/googletest/googletest-release-1.8.1/ and create build folder inside this like /opt/googletest/googletest-release-1.8.1/googletest/build) --- End diff -- Please take care the number of space: this like --- |
In reply to this post by qiuchenjian-2
Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r244068607 --- Diff: docs/csdk-guide.md --- @@ -40,6 +66,7 @@ release the memory and destroy JVM. C++ SDK support read batch row. User can set batch by using withBatch(int batch) before build, and read batch by using readNextBatchRow(). + --- End diff -- No need for this. --- |
In reply to this post by qiuchenjian-2
Github user xubo245 commented on a diff in the pull request:
https://github.com/apache/carbondata/pull/2991#discussion_r244068660 --- Diff: pom.xml --- @@ -587,6 +587,9 @@ <module>examples/spark2</module> <module>datamap/lucene</module> <module>datamap/bloom</module> + <!-- GCC ,C++,CMAKE,MAKE and TestFramework is added only for spark 2.2 related machines,So calling --- End diff -- Can you support spark-2.3 too? --- |
Free forum by Nabble | Edit this page |