bind-9.4.0rc1 + DLZ crash with assertion failure

Aleksey Belolipcev a_belolipcev at ducat.kz
Fri Jan 26 08:30:45 UTC 2007


Mark Andrews wrote:
>> Mark Andrews wrote:
>>     
>>>> Aleksey Belolipcev wrote:
>>>>     
>>>>         
>>>>> Aleksey Belolipcev wrote:
>>>>>       
>>>>>           
>>>>>> Aleksey Belolipcev wrote:
>>>>>>   
>>>>>>         
>>>>>>             
>>>>>>> helo,
>>>>>>>
>>>>>>> I am using bind 9.4.0rc1 + DLZ (mysql) on a server running Solaris 9 (
>>>>>>>               
>> Sparc)
>>     
>>>>>>> after start named dying whith assertion failure:
>>>>>>>
>>>>>>> 22-Dec-2006 14:47:03.123 running
>>>>>>> 22-Dec-2006 14:47:03.730 checkhints: B.ROOT-SERVERS.NET/A (192.228.79.
>>>>>>>               
>> 201) missing from hints
>>     
>>>>>>> 22-Dec-2006 14:47:03.731 checkhints: B.ROOT-SERVERS.NET/A (128.9.0.107
>>>>>>>               
>> ) extra record in hints
>>     
>>>>>>> 22-Dec-2006 14:49:33.955 clients-per-query increased to 11
>>>>>>> 22-Dec-2006 14:56:07.885 zone.c:5919: REQUIRE((((zone) != 0) && (((con
>>>>>>>               
>> st isc__magic_t *)(zone))->magic == ((('Z') << 24 | ('O') << 1
>>     
>>>>>>> 6 | ('N') << 8 | ('E')))))) failed
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>>   
>>>>>>>     
>>>>>>>           
>>>>>>>               
>>>>>> debug:
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.342 client 88.151.177.166#1060: query
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.342
>>>>>> Query String: select id from zone where zone = '166.177.151.88.in-addr.
>>>>>>             
>> arpa'
>>     
>>>>>> 25-Dec-2006 16:32:19.343
>>>>>> Query String: select id from zone where zone = '177.151.88.in-addr.arpa
>>>>>>             
>> '
>>     
>>>>>> 25-Dec-2006 16:32:19.344
>>>>>> Query String: update data_count set count = count + 1 where zone 
>>>>>> ='177.151.88.in-addr.arpa'
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.345
>>>>>> Query String: select ttl, type, mx_priority, case when lower(type)='txt
>>>>>>             
>> ' 
>>     
>>>>>> then concat('"', data, '"') when lower(type)='soa' then CON
>>>>>> CAT_WS(' ',data,resp_person,serial,refresh,retry,expire,minimum) else 
>>>>>> data end from zone,dns_records where id=zone_id and zone = '17
>>>>>> 7.151.88.in-addr.arpa' and host = '166'
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.346
>>>>>> Query String: select ttl, type, mx_priority, case when lower(type)='txt
>>>>>>             
>> ' 
>>     
>>>>>> then concat('"', data, '"') when lower(type)='soa' then CON
>>>>>> CAT_WS(' ',data,resp_person,serial,refresh,retry,expire,minimum) else 
>>>>>> data end from zone,dns_records where id=zone_id and zone = '17
>>>>>> 7.151.88.in-addr.arpa' and host = '*'
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.347 zone.c:5919: REQUIRE((((zone) != 0) && (((cons
>>>>>>             
>> t 
>>     
>>>>>> isc__magic_t *)(zone))->magic == ((('Z') << 24 | ('O') << 1
>>>>>> 6 | ('N') << 8 | ('E')))))) failed
>>>>>>
>>>>>> 25-Dec-2006 16:32:19.348 exiting (due to assertion failure)
>>>>>>
>>>>>>
>>>>>>   
>>>>>>         
>>>>>>             
>>>>> another one:
>>>>>
>>>>> 09-Jan-2007 08:33:07.696 rdataset.c:124: REQUIRE((((rdataset) != 0) && 
>>>>> (((const isc__magic_t *)(rdataset))->magic == ((('D') << 24 | ('N') << 
>>>>> 16 | ('S') << 8 | ('R')))))) failed
>>>>> 09-Jan-2007 08:33:07.697 exiting (due to assertion failure)
>>>>>
>>>>> -- 
>>>>> DUCAT,
>>>>> Internet Department,
>>>>> System Administrator
>>>>> tel.: +7-(3272) 663-707
>>>>> fax: +7-(3272) 50-69-70
>>>>> E-mail: a_belolipcev at ducat.kz
>>>>>       
>>>>>           
>>>> 9.4.0rc2
>>>> same error:
>>>> 25-Jan-2007 13:22:44.593 rdataset.c:124: REQUIRE((((rdataset) != 0) && 
>>>> (((const isc__magic_t *)(rdataset))->magic == ((('D') << 24 | ('N') << 
>>>> 16 | ('S') << 8 | ('R')))))) failed
>>>> 25-Jan-2007 13:22:44.593 exiting (due to assertion failure)
>>>>     
>>>>         
>>> 	Well line 124 is the REQUIRE below.
>>>
>>> isc_boolean_t
>>> dns_rdataset_isassociated(dns_rdataset_t *rdataset) {
>>>         /*
>>>          * Is 'rdataset' associated?
>>>          */
>>>
>>>         REQUIRE(DNS_RDATASET_VALID(rdataset));
>>>
>>>         if (rdataset->methods != NULL)
>>>                 return (ISC_TRUE);
>>>
>>>         return (ISC_FALSE);
>>> }
>>>
>>> 	Now there are 159 calls to dns_rdataset_isassociated().
>>>
>>> grep -r dns_rdataset_isassociated lib bin/named contrib/dlz | grep c: | wc
>>>      159     493   10529
>>>
>>> 	Without a stack backtrace no one has a hope of working
>>> 	out where things went wrong.
>>>
>>> 	Mark
>>>   
>>>       
>> here the stack backtrace:
>>
>> This GDB was configured as "sparc-sun-solaris2.9"...
>> Core was generated by `/opt/bind-dlz/sbin/named -n 1'.
>> Program terminated with signal 6, Aborted.
>> #0  0xfef9e444 in ?? ()
>> (gdb) bt
>> #0  0xfef9e444 in ?? ()
>> #1  0xfef35c78 in ?? ()
>> #2  0x0003425c in query_addns (client=0x1d4f58, db=0x1cbe58) at query.c:1840
>>     
>
> 	What does 'strings core | grep "named version: BIND"' report.
>
> 	Line 1840 of query.c is not a executable line in BIND 9.4.0rc2.
>
> 	Mark
>  
>   
>> -- 
>> DUCAT,
>> Internet Department,
>> System Administrator
>> tel.: +7-(3272) 2663-707
>> fax: +7-(3272) 250-69-70
>> E-mail: a_belolipcev at ducat.kz
>>     
# strings core | grep "named version: BIND"
named version: BIND 9.4.0rc2 (Jan 25 2007)

-- 
DUCAT,
Internet Department,
System Administrator
tel.: +7-(3272) 2663-707
fax: +7-(3272) 250-69-70
E-mail: a_belolipcev at ducat.kz





More information about the bind-users mailing list