{"action":"created","issue":{"url":"https://api.github.com/repos/naver/pinpoint/issues/3985","repository_url":"https://api.github.com/repos/naver/pinpoint","labels_url":"https://api.github.com/repos/naver/pinpoint/issues/3985/labels{/name}","comments_url":"https://api.github.com/repos/naver/pinpoint/issues/3985/comments","events_url":"https://api.github.com/repos/naver/pinpoint/issues/3985/events","html_url":"https://github.com/naver/pinpoint/issues/3985","id":311159310,"number":3985,"title":"web throw NullPointerException: hostname must not be null","user":{"login":"aiqing2171","id":12061924,"avatar_url":"https://avatars2.githubusercontent.com/u/12061924?v=4","gravatar_id":"","url":"https://api.github.com/users/aiqing2171","html_url":"https://github.com/aiqing2171","followers_url":"https://api.github.com/users/aiqing2171/followers","following_url":"https://api.github.com/users/aiqing2171/following{/other_user}","gists_url":"https://api.github.com/users/aiqing2171/gists{/gist_id}","starred_url":"https://api.github.com/users/aiqing2171/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/aiqing2171/subscriptions","organizations_url":"https://api.github.com/users/aiqing2171/orgs","repos_url":"https://api.github.com/users/aiqing2171/repos","events_url":"https://api.github.com/users/aiqing2171/events{/privacy}","received_events_url":"https://api.github.com/users/aiqing2171/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":7,"created_at":"2018-04-04T09:48:08Z","updated_at":"2018-04-09T09:09:45Z","closed_at":null,"author_association":"NONE","body":"**Pinpoint version**:1.8.0-SNAPSHOT  today's newest.\r\n\r\nIf i set inbound=1, it will not throw exception(receive message from rabbit mq). But if i set inbound=2, pinpoint web shows \"Error!  hostname must not be null\" \r\n\r\n@jiaqifeng  Thank you for looking at this!\r\n\r\n```\r\n2018-04-04 17:30:54 [WARN ](.n.p.w.c.ControllerExceptionHandler) Failed to execute controller methods. message:java.lang.NullPointerException: hostname must not be null, request:{method=GET, heads={referer=[http://***:8080/], accept-language=[zh-CN,zh;q=0.9], cookie=[_gat=1; _ga=GA1.1.893457360.1519869019; _gid=GA1.1.1073140571.1522632488], host=[***:8080], x-requested-with=[XMLHttpRequest], connection=[keep-alive], accept-encoding=[gzip, deflate], accept=[application/json, text/javascript, */*; q=0.01], user-agent=[Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/62.0.3202.62 Safari/537.36]}, parameters={wasOnly=[false], bidirectional=[false], callerRange=[2], from=[1522833947000], to=[1522834247000], calleeRange=[2], serviceTypeName=[TOMCAT], applicationName=[*_bps], _=[1522834248602]}, url=http://***:8080/getServerMapDataV2.pinpoint}.\r\njava.util.concurrent.CompletionException: java.lang.NullPointerException: hostname must not be null\r\n        at java.util.concurrent.CompletableFuture.encodeThrowable(CompletableFuture.java:273)\r\n        at java.util.concurrent.CompletableFuture.completeThrowable(CompletableFuture.java:280)\r\n        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1592)\r\n        at om.navercorp.pinpoint.web.task.RequestContextPropagatingTaskDecorator$RequestContextPropagatingRunnable.run(RequestContextPropagatingTaskDecorator.java:50)\r\n        at com.navercorp.pinpoint.web.task.SecurityContextPropagatingTaskDecorator$SecurityContextPropagatingRunnable.run(SecurityContextPropagatingTaskDecorator.java:50)\r\n        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)\r\n        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)\r\n        at java.lang.Thread.run(Thread.java:748)\r\nCaused by: java.lang.NullPointerException: hostname must not be null\r\n        at com.navercorp.pinpoint.web.applicationmap.rawdata.LinkData.addLinkData(LinkData.java:69)\r\n        at com.navercorp.pinpoint.web.applicationmap.rawdata.LinkDataMap.addLinkData(LinkDataMap.java:44)\r\n        at com.navercorp.pinpoint.web.mapper.MapStatisticsCalleeMapper.mapRow(MapStatisticsCalleeMapper.java:106)\r\n        at com.navercorp.pinpoint.web.mapper.MapStatisticsCalleeMapper.mapRow(MapStatisticsCalleeMapper.java:45)\r\n        at com.navercorp.pinpoint.web.mapper.RowMapReduceResultExtractor.extractData(RowMapReduceResultExtractor.java:26)\r\n        at com.navercorp.pinpoint.common.hbase.HbaseTemplate2.executeParallelDistributedScan(HbaseTemplate2.java:676)\r\n        at com.navercorp.pinpoint.common.hbase.HbaseTemplate2.findParallel(HbaseTemplate2.java:658)\r\n        at com.navercorp.pinpoint.web.dao.hbase.HbaseMapStatisticsCalleeDao.selectCallee(HbaseMapStatisticsCalleeDao.java:96)\r\n        at com.navercorp.pinpoint.web.service.LinkDataMapServiceImpl.selectCalleeLinkDataMap(LinkDataMapServiceImpl.java:46)\r\n        at com.navercorp.pinpoint.web.service.map.DefaultApplicationMapCreator.createMap(DefaultApplicationMapCreator.java:84)\r\n        at com.navercorp.pinpoint.web.service.map.DefaultApplicationsMapCreator$1.get(DefaultApplicationsMapCreator.java:90)\r\n        at com.navercorp.pinpoint.web.service.map.DefaultApplicationsMapCreator$1.get(DefaultApplicationsMapCreator.java:87)\r\n        at java.util.concurrent.CompletableFuture$AsyncSupply.run(CompletableFuture.java:1590)\r\n        ... 5 more\r\n```\r\n"},"comment":{"url":"https://api.github.com/repos/naver/pinpoint/issues/comments/379686176","html_url":"https://github.com/naver/pinpoint/issues/3985#issuecomment-379686176","issue_url":"https://api.github.com/repos/naver/pinpoint/issues/3985","id":379686176,"user":{"login":"Xylus","id":10057488,"avatar_url":"https://avatars2.githubusercontent.com/u/10057488?v=4","gravatar_id":"","url":"https://api.github.com/users/Xylus","html_url":"https://github.com/Xylus","followers_url":"https://api.github.com/users/Xylus/followers","following_url":"https://api.github.com/users/Xylus/following{/other_user}","gists_url":"https://api.github.com/users/Xylus/gists{/gist_id}","starred_url":"https://api.github.com/users/Xylus/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Xylus/subscriptions","organizations_url":"https://api.github.com/users/Xylus/orgs","repos_url":"https://api.github.com/users/Xylus/repos","events_url":"https://api.github.com/users/Xylus/events{/privacy}","received_events_url":"https://api.github.com/users/Xylus/received_events","type":"User","site_admin":false},"created_at":"2018-04-09T09:09:45Z","updated_at":"2018-04-09T09:09:45Z","author_association":"MEMBER","body":"@aiqing2171 \r\nThanks for the explanation.\r\n\r\nTo be clear, it's your tomcat application that executes the **RabbitTemplate** code in a separate thread, right? (The second one from your example).\r\nIf so, is everything up to the thread switch is traced correctly?\r\n\r\n*app2* (the quartz crontab spring project) executes the **RabbitTemplate** code in the same thread (as the one executing the entry point method) and is traced okay?\r\n(except for the fact that inbound = 2 queries will throw *hostname must not be null* exception)"}}
{"actor":{"display_login":"Xylus"}}