> On Oct. 11, 2013, 8:02 p.m., Jarek Cecho wrote:
> > Hi Abe,
> > thank you very much for working on the patch, appreciated! I've tested it 
> > in my environment and I do have couple of notes:
> > 
> > I think that we need to ensure that one failed command will end entire 
> > script execution. I'm thinking about use case that would do the following:
> > 
> > 1) create connection
> > 2) create job for -^
> > 3) run the job -^
> > 
> > In such situation we need to ensure that we are not creating job for 
> > non-existing connection or running non-existing job.
> 
> Abraham Elmahrek wrote:
>     Thanks for the review Jarcec. Would it be appropriate to have 
> executeFunction and its parent callers return a boolean value rather than an 
> Object value? I think an Object value would be useful, but perhaps a more 
> abstracted Object value that we could handle in a follow up jira. i.e. A 
> class that contains a Status and a return object?

The reason why the executeFunction() methods are returning Object instead of 
boolean is that it's expected by Groovy shell. Having said that I would prefer 
to return what is expected from us, rather then limit it to a boolean value 
only.


> On Oct. 11, 2013, 8:02 p.m., Jarek Cecho wrote:
> > shell/src/main/java/org/apache/sqoop/shell/CloneConnectionFunction.java, 
> > lines 107-115
> > <https://reviews.apache.org/r/13181/diff/6/?file=359340#file359340line107>
> >
> >     Can we make this and similar code a bit more verbose?
> >     
> >     I've tried following script:
> >     
> >     create connection --cid 1 --name NameX
> >     
> >     And I got following output:
> >     
> >     [root@bousa-trunk sqoop]# ./bin/sqoop.sh client create.sqoop
> >     Sqoop home directory: /root/sqoop
> >     sqoop:000> create connection --cid 1 --name NameX
> >     Creating connection for connector with id 1
> >     [root@bousa-trunk sqoop]#
> >     
> >     Creating the connection has failed as I did not specified any 
> > arguments, but there is no error message which is really confusing.
> 
> Abraham Elmahrek wrote:
>     I see FormFiller#printValidationMessage exists to aid in printing error 
> messages. Can I simply re-use this for the time being? I think a more 
> appropriate response would be to describe what exactly is missing (cf. help), 
> but it seems fine to focus on one thing in this jira? The error output would 
> look like:
>     Error message: Driver can't be empty 
>     Error message: JDBC URL can't be empty

Yeah, that seems good, let's try to reuse that!


- Jarek


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviews.apache.org/r/13181/#review26935
-----------------------------------------------------------


On Sept. 27, 2013, 6:30 p.m., Abraham Elmahrek wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://reviews.apache.org/r/13181/
> -----------------------------------------------------------
> 
> (Updated Sept. 27, 2013, 6:30 p.m.)
> 
> 
> Review request for Sqoop, Hari Shreedharan and Jarek Cecho.
> 
> 
> Bugs: SQOOP-773
>     https://issues.apache.org/jira/browse/SQOOP-773
> 
> 
> Repository: sqoop-sqoop2
> 
> 
> Description
> -------
> 
> commit 080ced16578c1d95015ce3e99b4335beb465861a
> Author: Abraham Elmahrek <[email protected]>
> Date:   Tue Aug 13 14:14:06 2013 -0700
> 
>     SQOOP-773 Sqoop2: Batch execution support for client commands
>     
>     Separated options into two groups: fixed and dynamic options.
>     Fixed options (IE: connector ID) come first and are used to select
>     what options should be used in dynamic options. Dynamic options
>     are automatically created based on forms selected from fixed options.
>     The keys for these options take on the form "<prefix>-<form 
> name>-<input-name>".
> 
> :100644 100644 980a908... a7e7e7d... M  
> shell/src/main/java/org/apache/sqoop/shell/CloneCommand.java
> :100644 100644 856abaa... 2c2869c... M  
> shell/src/main/java/org/apache/sqoop/shell/CloneConnectionFunction.java
> :100644 100644 3e23025... dd2eb2b... M  
> shell/src/main/java/org/apache/sqoop/shell/CloneJobFunction.java
> :100644 100644 e62ce08... 9ad007b... M  
> shell/src/main/java/org/apache/sqoop/shell/CreateCommand.java
> :100644 100644 5fbf0a3... 973fd53... M  
> shell/src/main/java/org/apache/sqoop/shell/CreateConnectionFunction.java
> :100644 100644 6e4f04b... f0d4a6c... M  
> shell/src/main/java/org/apache/sqoop/shell/CreateJobFunction.java
> :100644 100644 c123732... d79516d... M  
> shell/src/main/java/org/apache/sqoop/shell/DeleteConnectionFunction.java
> :100644 100644 d4095b7... df9a2cc... M  
> shell/src/main/java/org/apache/sqoop/shell/DeleteJobFunction.java
> :100644 100644 f119660... b5a54b9... M  
> shell/src/main/java/org/apache/sqoop/shell/DisableConnectionFunction.java
> :100644 100644 a87e51f... 8cc4ea3... M  
> shell/src/main/java/org/apache/sqoop/shell/DisableJobFunction.java
> :100644 100644 f782b16... 0c9f184... M  
> shell/src/main/java/org/apache/sqoop/shell/EnableConnectionFunction.java
> :100644 100644 20c80dc... de5000b... M  
> shell/src/main/java/org/apache/sqoop/shell/EnableJobFunction.java
> :100644 100644 1c43dce... f0153b8... M  
> shell/src/main/java/org/apache/sqoop/shell/SetOptionFunction.java
> :100644 100644 abd9cea... 1aacd7c... M  
> shell/src/main/java/org/apache/sqoop/shell/SetServerFunction.java
> :100644 100644 b55d5d1... f0720a0... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowConnectionFunction.java
> :100644 100644 97a4ab2... a9aba71... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowConnectorFunction.java
> :100644 100644 28497db... c71696c... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowFrameworkFunction.java
> :100644 100644 da4a4ff... 68bd3b3... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowJobFunction.java
> :100644 100644 5e3c3ff... d0b05e2... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowOptionFunction.java
> :100644 100644 ec97e63... 11bff86... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowServerFunction.java
> :100644 100644 a592a98... a571269... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java
> :100644 100644 764b754... 5d6f97f... M  
> shell/src/main/java/org/apache/sqoop/shell/ShowVersionFunction.java
> :100644 100644 675a796... 371c867... M  
> shell/src/main/java/org/apache/sqoop/shell/SqoopFunction.java
> :100644 100644 f03e08f... 914454f... M  
> shell/src/main/java/org/apache/sqoop/shell/StartCommand.java
> :100644 100644 02148de... b8771c4... M  
> shell/src/main/java/org/apache/sqoop/shell/StartJobFunction.java
> :100644 100644 184892a... ebd4548... M  
> shell/src/main/java/org/apache/sqoop/shell/StatusCommand.java
> :100644 100644 be0de8c... c61e9b9... M  
> shell/src/main/java/org/apache/sqoop/shell/StatusJobFunction.java
> :100644 100644 698bca7... 65a454b... M  
> shell/src/main/java/org/apache/sqoop/shell/StopCommand.java
> :100644 100644 6c0e3c2... ae559cc... M  
> shell/src/main/java/org/apache/sqoop/shell/StopJobFunction.java
> :100644 100644 9262ccd... 24f31ea... M  
> shell/src/main/java/org/apache/sqoop/shell/UpdateCommand.java
> :100644 100644 c062fe6... 31d9af9... M  
> shell/src/main/java/org/apache/sqoop/shell/UpdateConnectionFunction.java
> :100644 100644 da1e0c5... 6f83b91... M  
> shell/src/main/java/org/apache/sqoop/shell/UpdateJobFunction.java
> :000000 100644 0000000... 6b6e858... A  
> shell/src/main/java/org/apache/sqoop/shell/utils/ConnectionDynamicFormOptions.java
> :000000 100644 0000000... cc63610... A  
> shell/src/main/java/org/apache/sqoop/shell/utils/DynamicFormOptions.java
> :100644 100644 9bc0b93... bf0615e... M  
> shell/src/main/java/org/apache/sqoop/shell/utils/FormFiller.java
> :000000 100644 0000000... 516790a... A  
> shell/src/main/java/org/apache/sqoop/shell/utils/FormOptions.java
> :000000 100644 0000000... aa118e1... A  
> shell/src/main/java/org/apache/sqoop/shell/utils/JobDynamicFormOptions.java
> 
> 
> Diffs
> -----
> 
>   shell/src/main/java/org/apache/sqoop/shell/CloneCommand.java 
> 980a9086f433fd3a2228122b6a253a9a1c562315 
>   shell/src/main/java/org/apache/sqoop/shell/CloneConnectionFunction.java 
> 856abaae5a7745b38b1db42cd9283732d1bc0b64 
>   shell/src/main/java/org/apache/sqoop/shell/CloneJobFunction.java 
> 3e2302514d9350affbc9ab199fb4e91355201290 
>   shell/src/main/java/org/apache/sqoop/shell/CreateCommand.java 
> e62ce08ca1ee9168a77b619d21db93b04809b7ec 
>   shell/src/main/java/org/apache/sqoop/shell/CreateConnectionFunction.java 
> 5fbf0a3d8ec13c8e3628525b7d6432d56ddbb0c3 
>   shell/src/main/java/org/apache/sqoop/shell/CreateJobFunction.java 
> 6e4f04bf392f0c062e211fd6709f362ec6e584c3 
>   shell/src/main/java/org/apache/sqoop/shell/DeleteConnectionFunction.java 
> c1237320b3ceec48569c34f4b2a3fa78b4d2c26e 
>   shell/src/main/java/org/apache/sqoop/shell/DeleteJobFunction.java 
> d4095b736d3dcc97487c20cb71c7c460139c2afd 
>   shell/src/main/java/org/apache/sqoop/shell/DisableConnectionFunction.java 
> f1196601857b90442b1c9394902b71d3bd140915 
>   shell/src/main/java/org/apache/sqoop/shell/DisableJobFunction.java 
> a87e51f32226ad6e65b8970d159861e013c6fe9d 
>   shell/src/main/java/org/apache/sqoop/shell/EnableConnectionFunction.java 
> f782b1654203c450b4d22b762dc0f406b560aa29 
>   shell/src/main/java/org/apache/sqoop/shell/EnableJobFunction.java 
> 20c80dca160ddbfa9edb6c5ea5c19fdc3d0bb7c9 
>   shell/src/main/java/org/apache/sqoop/shell/SetOptionFunction.java 
> 1c43dceea2581cea70d0324a63292a0909a402e1 
>   shell/src/main/java/org/apache/sqoop/shell/SetServerFunction.java 
> abd9ceac5a8338dcb1273b0f4732b6bd79962d65 
>   shell/src/main/java/org/apache/sqoop/shell/ShowConnectionFunction.java 
> b55d5d1126b1bd33f4517173257188504557b3f2 
>   shell/src/main/java/org/apache/sqoop/shell/ShowConnectorFunction.java 
> 97a4ab2a2377a2aff564f8ffc18884aa11d8a5e3 
>   shell/src/main/java/org/apache/sqoop/shell/ShowFrameworkFunction.java 
> 28497db27295c4ca89ef4b56986818803296cb10 
>   shell/src/main/java/org/apache/sqoop/shell/ShowJobFunction.java 
> da4a4ff324c32deceadd45d336646eb5bc5a7882 
>   shell/src/main/java/org/apache/sqoop/shell/ShowOptionFunction.java 
> 5e3c3ff9469ee75d6b9d7635de66b033e93c37cd 
>   shell/src/main/java/org/apache/sqoop/shell/ShowServerFunction.java 
> ec97e637937129ff0e2151612f98eceb284ec126 
>   shell/src/main/java/org/apache/sqoop/shell/ShowSubmissionFunction.java 
> a592a9861f01d333ef72f1f96bdf038ab334ea9e 
>   shell/src/main/java/org/apache/sqoop/shell/ShowVersionFunction.java 
> 764b754180500a86501450c90b119813de6cf1f7 
>   shell/src/main/java/org/apache/sqoop/shell/SqoopFunction.java 
> 675a796d7919a3afadea2e14a88f7823d5dced47 
>   shell/src/main/java/org/apache/sqoop/shell/StartCommand.java 
> f03e08fe2178c2b044eef1bfbfa82c9235d8914d 
>   shell/src/main/java/org/apache/sqoop/shell/StartJobFunction.java 
> 02148de497c15caa363c17a54202690a9026a68b 
>   shell/src/main/java/org/apache/sqoop/shell/StatusCommand.java 
> 184892a33b1b26391c7a7eaa8c79cd27f0178c39 
>   shell/src/main/java/org/apache/sqoop/shell/StatusJobFunction.java 
> be0de8c29289a904cfc00361da7fbf9a6c8e7d1c 
>   shell/src/main/java/org/apache/sqoop/shell/StopCommand.java 
> 698bca778d3aa09fa24372a6367986391f9e61d9 
>   shell/src/main/java/org/apache/sqoop/shell/StopJobFunction.java 
> 6c0e3c284b997561fc351a57e35ce2d6c77f6121 
>   shell/src/main/java/org/apache/sqoop/shell/UpdateCommand.java 
> 9262ccd085730c7101179157db9828ac709c267d 
>   shell/src/main/java/org/apache/sqoop/shell/UpdateConnectionFunction.java 
> c062fe6781aebac15c4d59b5690772695d8a10a9 
>   shell/src/main/java/org/apache/sqoop/shell/UpdateJobFunction.java 
> da1e0c570fb43cea439549c0ab5268f67d55996d 
>   shell/src/main/java/org/apache/sqoop/shell/core/ShellError.java 
> e5a99f1cdef7afc4df12e7eed36e1096e2ccd3ea 
>   
> shell/src/main/java/org/apache/sqoop/shell/utils/ConnectionDynamicFormOptions.java
>  PRE-CREATION 
>   shell/src/main/java/org/apache/sqoop/shell/utils/DynamicFormOptions.java 
> PRE-CREATION 
>   shell/src/main/java/org/apache/sqoop/shell/utils/FormFiller.java 
> 9bc0b93649cb2ae6c84228b52c04b60a36c13b18 
>   shell/src/main/java/org/apache/sqoop/shell/utils/FormOptions.java 
> PRE-CREATION 
>   shell/src/main/java/org/apache/sqoop/shell/utils/JobDynamicFormOptions.java 
> PRE-CREATION 
> 
> Diff: https://reviews.apache.org/r/13181/diff/
> 
> 
> Testing
> -------
> 
> Executed the following commands in a file:
> 
> create connection --cid 1 --name mysql-test --connector-connection-jdbcDriver 
> com.mysql.jdbc.Driver --connector-connection-connectionString 
> jdbc:mysql://hue.ent.cloudera.com/test --connector-connection-username root 
> --connector-connection-password root
> show connection
> create job --xid 1 --type import --name mysql-import-job1 
> --connector-table-tableName test --connector-table-partitionColumn a 
> --framework-output-storageType 0 --framework-output-outputFormat 0 
> --framework-output-outputDirectory /tmp/output
> show job
> start job --jid 1
> 
> 
> Thanks,
> 
> Abraham Elmahrek
> 
>

Reply via email to