plesk/ext-route53

MX Records with priority level = 0 crashes route53.php (line 221)

Closed this issue · 1 comments

Hi All

First of all, great work. Amazing plugin.

I've run into an issue where my DNS records were not being synched with Route53 anymore. I've managed to tracked down the issue.
It seems that when MX records with priority = 0 are created something doesn't work. It could be that the issue is on the Route53 API, but it looks like it has something to do with "opt":"0" being dropped and empty being used instead.
By changing the priority level to 5 fixes the issue. Log attached below:

[2015-07-23 01:12:19] DEBUG [panel] DNS Custom backend call: [{"command":"update","zone":{"name":"mc3.com.au.","displayName":"mc3.com.au.","soa":{"email":"removed@mc3.com.au","status":"0","type":"master","ttl":"86400","refresh":"10800","retry":"3600","expire":"604800","minimum":"10800","serial":1437577939,"serial_format":"UNIXTIMESTAMP"},"rr":[{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"NS","displayValue":"ns.mc3.com.au.","opt":"","value":"ns.mc3.com.au."},{"host":"ns.mc3.com.au.","displayHost":"ns.mc3.com.au.","type":"A","displayValue":"52.8.196.178","opt":"","value":"52.8.196.178"},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"A","displayValue":"52.8.196.178","opt":"","value":"52.8.196.178"},{"host":"www.mc3.com.au.","displayHost":"www.mc3.com.au.","type":"CNAME","displayValue":"mc3.com.au.","opt":"","value":"mc3.com.au."},{"host":"mail.mc3.com.au.","displayHost":"mail.mc3.com.au.","type":"A","displayValue":"52.8.196.178","opt":"","value":"52.8.196.178"},{"host":"ftp.mc3.com.au.","displayHost":"ftp.mc3.com.au.","type":"CNAME","displayValue":"mc3.com.au.","opt":"","value":"mc3.com.au."},{"host":"52.8.196.178","displayHost":"52.8.196.178","type":"PTR","displayValue":"mc3.com.au.","opt":"24","value":"mc3.com.au."},{"host":"lists.mc3.com.au.","displayHost":"lists.mc3.com.au.","type":"CNAME","displayValue":"mc3.com.au.","opt":"","value":"mc3.com.au."},{"host":"webmail.mc3.com.au.","displayHost":"webmail.mc3.com.au.","type":"A","displayValue":"52.8.196.178","opt":"","value":"52.8.196.178"},{"host":"sitebuilder.mc3.com.au.","displayHost":"sitebuilder.mc3.com.au.","type":"A","displayValue":"52.8.196.178","opt":"","value":"52.8.196.178"},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"MX","displayValue":"aspmx.l.google.com.","opt":"0","value":"aspmx.l.google.com."},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"MX","displayValue":"alt1.aspmx.l.google.com.","opt":"5","value":"alt1.aspmx.l.google.com."},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"MX","displayValue":"alt2.aspmx.l.google.com.","opt":"5","value":"alt2.aspmx.l.google.com."},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"MX","displayValue":"alt3.aspmx.l.google.com.","opt":"10","value":"alt3.aspmx.l.google.com."},{"host":"mc3.com.au.","displayHost":"mc3.com.au.","type":"MX","displayValue":"alt4.aspmx.l.google.com.","opt":"10","value":"alt4.aspmx.l.google.com."}]}},{"command":"createPTRs","ptr":{"ip_address":"52.8.196.178","hostname":"mc3.com.au"}}]

[2015-07-23 01:12:21] ERR [panel] Invalid Resource Record: FATAL problem: MXRRDataNotTwoFields encountered at aspmx.l.google.com.:
0: NamespaceExceptionFactory.php:91
Aws\Common\Exception\NamespaceExceptionFactory->createException(string 'Aws\Route53\Exception\InvalidChangeBatchException', object of type Guzzle\Http\Message\EntityEnclosingRequest, object of type Guzzle\Http\Message\Response, array)
1: NamespaceExceptionFactory.php:76
Aws\Common\Exception\NamespaceExceptionFactory->fromResponse(object of type Guzzle\Http\Message\EntityEnclosingRequest, object of type Guzzle\Http\Message\Response)
2: ExceptionListener.php:55
Aws\Common\Exception\ExceptionListener->onRequestError(object of type Guzzle\Common\Event)
3: :
call_user_func(array, object of type Guzzle\Common\Event)
4: EventDispatcher.php:164
Symfony\Component\EventDispatcher\EventDispatcher->doDispatch(array, string 'request.error', object of type Guzzle\Common\Event)
5: EventDispatcher.php:53
Symfony\Component\EventDispatcher\EventDispatcher->dispatch(string 'request.error', object of type Guzzle\Common\Event)
6: Request.php:589
Guzzle\Http\Message\Request->processResponse(array)
7: Request.php:378
Guzzle\Http\Message\Request->setState(string 'complete', array)
8: EntityEnclosingRequest.php:49
Guzzle\Http\Message\EntityEnclosingRequest->setState(string 'complete', array)
9: CurlMulti.php:286
Guzzle\Http\Curl\CurlMulti->processResponse(object of type Guzzle\Http\Message\EntityEnclosingRequest, object of type Guzzle\Http\Curl\CurlHandle, array)
10: CurlMulti.php:244
Guzzle\Http\Curl\CurlMulti->processMessages()
11: CurlMulti.php:227
Guzzle\Http\Curl\CurlMulti->executeHandles()
12: CurlMulti.php:211
Guzzle\Http\Curl\CurlMulti->perform()
13: CurlMulti.php:105
Guzzle\Http\Curl\CurlMulti->send()
14: CurlMultiProxy.php:91
Guzzle\Http\Curl\CurlMultiProxy->send()
15: Client.php:282
Guzzle\Http\Client->send(object of type Guzzle\Http\Message\EntityEnclosingRequest)
16: AbstractClient.php:286
Aws\Common\Client\AbstractClient->send(object of type Guzzle\Http\Message\EntityEnclosingRequest)
17: Client.php:136
Guzzle\Service\Client->execute(object of type Guzzle\Service\Command\OperationCommand)
18: AbstractCommand.php:153
Guzzle\Service\Command\AbstractCommand->execute()
19: AbstractCommand.php:189
Guzzle\Service\Command\AbstractCommand->getResult()
20: Client.php:76
Guzzle\Service\Client->__call(string 'ChangeResourceRecordSets', array)
21: AbstractClient.php:107
Aws\Common\Client\AbstractClient->__call(string 'changeResourceRecordSets', array)
22: :
Aws\Route53\Route53Client->changeResourceRecordSets(array)
23: :
call_user_func_array(array, array)
24: Client.php:45
Modules_Route53_Client->__call(string 'changeResourceRecordSets', array)
25: route53.php:221
Modules_Route53_Client->changeResourceRecordSets(array)
26: route53.php:221

Have confirmed that this issue is repaired and working. NOTE: Route53 assigns priority of 0 from Plesk as Priority 1.