Craig,

Here's my thinking on this, though I don't speak for all of the committers. Pig should have 3 ways to pick up configuration:

1) from .pigrc, as it does now
2) when embedded in another java program, the caller should be able to set values in PigContext, as I referred to in my response to Benjamin's email. 3) From the pig script, we should be able to something like: set conf.x = y (I'm not necessarily suggesting syntax here).

With those in mind, to answer you're specific questions:

Craig Macdonald wrote:
Hi pig-devs,

Just a quiet ping for comments from project leads on this. It seems I have raised several issues recently that require configuration of pig. Questions:
* Are System properties the best place for these?
We seem to be putting them in PigContext.conf for now, which is probably a fine place for them.
* Should .pigrc evolve into a place for Pig aliases and properties, and even scripts? (similar to .bashrc etc)
Right now you can store pig properties here. It's not clear it needs to grow beyond that. What use case do you see for storing aliases or scripts here?
* Should new commands be added: import, include, sharedFS etc?
I'm guessing this is the same things as I'm saying in 3 above. If not, please elaborate on what these new commands would do.
* Please direct me as to how JIRAs should be created.
I may be able to provide patches to some JIRAs I have created if we have a policy for configuration-type stuff.

C

Craig Macdonald wrote:
Good morning Pig-devs,

This email notes some of the yahoo specifics remaining in Pig that may be needed to checked before a Pig release (see 1. below). I would hope that Pig syntax can be evolved to allow these to be removed (see (2) below), and instead placed in users .pigrc.

From PigContext, I note that the .pigrc is in fact a place for properties. An alternative would be for the Grunt set command to set System properties, and then make .pigrc into a pig script, allowing users to define aliases, register common jar files, import common namespaces, include other pig script files.

Please direct how JIRAs should be created to track these issues - one issue for all, with subtasks; separate tasks for the three issues below?

Details below.

Craig

1. Yahoo specifics

src/org/apache/pig/backend/hadoop/executionengine/HExecutionEngine.java
doHod() contains yahoo specific stuff. I'm not sure Hod has stabalised sufficiently for this to be changed fixUpDomain() assumes unqualified hostnames are part of the .inktomisearch.com DNS domain

src/org/apache/pig/impl/PigContext.java:125
       packageImportList.add("com.yahoo.pig.yst.sds.ULT.");
Note - these is no Pig command to allow imports of package namespaces into the packageImportList ArrayList

scripts/pig.pl
   kryptontite mentions, specifics: 69, 114

2. Extensions to Pig syntax
(a) "set" command sets all system properties
(b) "include" includes and parses another pig script
(c) "import" adds a package namespace to the search path

3. Change so that ~/.pigrc into a pig script that is parsed on startup of Grunt/PigServer?


Reply via email to