On Thu, Apr 8, 2010 at 5:22 PM, Edward Capriolo <[email protected]>wrote:

>
>
> On Thu, Apr 8, 2010 at 5:14 PM, Paul Yang <[email protected]> wrote:
>
>> Seems to be fixed in 0.6. Here's what I got:
>>
>> test.q:
>> alter table tmp_pyang_t ADD PARTITION (ds='2') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='3') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='4') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='5') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='6') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='7') LOCATION '/tmp/blah2';
>> alter table tmp_pyang_t ADD PARTITION (ds='8') LOCATION '/tmp/blah2';
>>
>>
>> Hive history file=/tmp/pyang/hive_job_log_pyang_201004081410_378771152.txt
>> OK
>> Time taken: 4.101 seconds
>> OK
>> Time taken: 0.558 seconds
>> OK
>> Time taken: 0.453 seconds
>> OK
>> Time taken: 0.416 seconds
>> OK
>> Time taken: 0.378 seconds
>> OK
>> Time taken: 0.457 seconds
>> OK
>> Time taken: 0.454 seconds
>>
>>
>> Can you the stack trace in /tmp/<username>/hive.log?
>>
>> -----Original Message-----
>> From: Prasad Chakka [mailto:[email protected]]
>> Sent: Thursday, April 08, 2010 1:03 PM
>> To: [email protected]
>> Subject: Re: enough alter tables in the same .q file eventually fail
>>
>> There was a bug that got fixed where each request was creating a separate
>> metastore client. That could be it or something similar that hasn't gotten
>> fixed.
>>
>> On Apr 8, 2010, at 11:47 AM, Edward Capriolo wrote:
>>
>> > Hive 5.0 mysql as metastore backend. Using external tables with location
>> for partitions...
>> >
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000843') LOCATION 'hit_date=20100329/mid=000843';
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000844') LOCATION 'hit_date=20100329/mid=000844';
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000849') LOCATION 'hit_date=20100329/mid=000849';
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000850') LOCATION 'hit_date=20100329/mid=000850';
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000851') LOCATION 'hit_date=20100329/mid=000851';
>> > alter table XXXX_action ADD PARTITION (hit_date = '20100329' , mid =
>> '000852') LOCATION 'hit_date=20100329/mid=000852';
>> >
>> > Eventually this fails after a number of entries.
>> >
>> > Time taken: 0.159 seconds
>> > OK
>> > Time taken: 0.17 seconds
>> > OK
>> > Time taken: 0.241 seconds
>> > FAILED: Error in metadata: Unable to fetch table XXXXX_action
>> > FAILED: Execution Error, return code 1 from
>> org.apache.hadoop.hive.ql.exec.DDLTask
>> >
>> > Restarting the process after removing the already added tables works
>> until it breaks again. Anyone ever dealt with this?
>> >
>> > Doing one hive -e per table always works but takes a lot longer ...3
>> seconds a partition rather then ~.5 seconds.
>> >
>> >
>>
>>
> It does not happen after 4 or 5 more like 100 or 1000+. I will try to track
> this down a bit.
>
> Edward
>


Try this:

echo "create external table if not exists edtest ( dat string ) partitioned
by (dummy string) location '/tmp/a';" > test.q
 for i in {1..3000} ; do echo "alter table ed_test add partition
(dummy='${i}') location '/tmp/duh';" ; done >> test.q
hive -f test.q

On Hive 5.0 I get a failure mid way.
Edward

Reply via email to