I was hacking away happily with clojurescript, when suddenly this error cropped up:
java.lang.IllegalArgumentException: Parameter declaration clojure.core/let should be a vector
core.clj:6567 clojure.core/assert-valid-fdecl
core.clj:220 clojure.core/sigs
I have tried commenting all bits of code, restarted the server etc ..... I am using cljsbuild 0.2.1 for comiplation. How do I debug this error?
Below is the complete stacktrace, and it doesnt show which line could be causing the error -
Compiling "resources/public/cljs/client.js" failed:
java.lang.IllegalArgumentException: Parameter declaration clojure.core/let should be a vector
core.clj:6567 clojure.core/assert-valid-fdecl
core.clj:220 clojure.core/sigs
core.clj:294 clojure.core/defn
RestFn.java:146 clojure.lang.RestFn.applyTo
core.clj:605 clojure.core/apply
compiler.clj:1394 cljs.compiler/macroexpand-1
compiler.clj:1411 cljs.compiler/analyze-seq
compiler.clj:1468 cljs.compiler/analyze
compiler.clj:1416 cljs.compiler/analyze-seq
compiler.clj:1468 cljs.compiler/analyze
compiler.clj:1461 cljs.compiler/analyze
compiler.clj:829 cljs.compiler/analyze-block
compiler.clj:1036 cljs.compiler/eval1347[fn]
MultiFn.java:177 clojure.lang.MultiFn.invoke
compiler.clj:1414 cljs.compiler/analyze-seq
compiler.clj:1468 cljs.compiler/analyze
compiler.clj:1416 cljs.compiler/analyze-seq
compiler.clj:1468 cljs.compiler/analyze
compiler.clj:1461 cljs.compiler/analyze
compiler.clj:1487 cljs.compiler/analyze-file
compiler.clj:1153 cljs.compiler/analyze-deps
compiler.clj:1187 cljs.compiler/eval1420[fn]
MultiFn.java:177 clojure.lang.MultiFn.invoke
compiler.clj:1414 cljs.compiler/analyze-seq
compiler.clj:1468 cljs.compiler/analyze
compiler.clj:1461 cljs.compiler/analyze
compiler.clj:1529 cljs.compiler/compile-file*
compiler.clj:1567 cljs.compiler/compile-file
compiler.clj:1628 cljs.compiler/compile-root
closure.clj:367 cljs.closure/compile-dir
closure.clj:399 cljs.closure/eval2024[fn]
closure.clj:266 cljs.closure/eval1952[fn]
closure.clj:413 cljs.closure/eval2011[fn]
closure.clj:266 cljs.closure/eval1952[fn]
closure.clj:877 cljs.closure/build
compiler.clj:49 cljsbuild.compiler/compile-cljs[fn]
compiler.clj:48 cljsbuild.compiler/compile-cljs
compiler.clj:116 cljsbuild.compiler/run-compiler
NO_SOURCE_FILE:1 user/eval2452[fn]
LazySeq.java:42 clojure.lang.LazySeq.sval
LazySeq.java:60 clojure.lang.LazySeq.seq
RT.java:473 clojure.lang.RT.seq
core.clj:133 clojure.core/seq
core.clj:2725 clojure.core/dorun
core.clj:2741 clojure.core/doall
NO_SOURCE_FILE:1 user/eval2452
Compiler.java:6511 clojure.lang.Compiler.eval
Compiler.java:6501 clojure.lang.Compiler.eval
Compiler.java:6500 clojure.lang.Compiler.eval
Compiler.java:6501 clojure.lang.Compiler.eval
Compiler.java:6477 clojure.lang.Compiler.eval
core.clj:2797 clojure.core/eval
main.clj:297 clojure.main/eval-opt
main.clj:316 clojure.main/initialize
main.clj:349 clojure.main/null-opt
main.clj:427 clojure.main/main
RestFn.java:421 clojure.lang.RestFn.invoke
Var.java:419 clojure.lang.Var.invoke
AFn.java:163 clojure.lang.AFn.applyToHelper
Var.java:532 clojure.lang.Var.applyTo
main.java:37 clojure.main.main
The compiler should ideally emit a line number for your syntax error. Somewhere you have a malformed let expression.
Related
on thingsboard i am getting the following error with alarms,can anyone help me with this
Blockorg.springframework.dao.InvalidDataAccessResourceUsageException: could not extract ResultSet; SQL [n/a]; nested exception is org.hibernate.exception.SQLGrammarException: could not extract ResultSet
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.convertHibernateAccessException(HibernateJpaDialect.java:281)
at org.springframework.orm.jpa.vendor.HibernateJpaDialect.translateExceptionIfPossible(HibernateJpaDialect.java:255)
at org.springframework.orm.jpa.AbstractEntityManagerFactoryBean.translateExceptionIfPossible(AbstractEntityManagerFactoryBean.java:531)
at org.springframework.dao.support.ChainedPersistenceExceptionTranslator.translateExceptionIfPossible(ChainedPersistenceExceptionTranslator.java:61)
at org.springframework.dao.support.DataAccessUtils.translateIfNecessary(DataAccessUtils.java:242)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:154)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.data.jpa.repository.support.CrudMethodMetadataPostProcessor$CrudMethodMetadataPopulatingMethodInterceptor.invoke(CrudMethodMetadataPostProcessor.java:149)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.interceptor.ExposeInvocationInterceptor.invoke(ExposeInvocationInterceptor.java:95)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:212)
at com.sun.proxy.$Proxy210.findLatestByOriginatorAndType(Unknown Source)
at org.thingsboard.server.dao.sql.alarm.JpaAlarmDao.lambda$findLatestByOriginatorAndType$0(JpaAlarmDao.java:87)
at com.google.common.util.concurrent.TrustedListenableFutureTask$TrustedFutureInterruptibleTask.runInterruptibly(TrustedListenableFutureTask.java:125)
at com.google.common.util.concurrent.InterruptibleTask.run(InterruptibleTask.java:69)
at com.google.common.util.concurrent.TrustedListenableFutureTask.run(TrustedListenableFutureTask.java:78)
at java.base/java.util.concurrent.ForkJoinTask$RunnableExecuteAction.exec(ForkJoinTask.java:1426)
at java.base/java.util.concurrent.ForkJoinTask.doExec(ForkJoinTask.java:290)
at java.base/java.util.concurrent.ForkJoinPool$WorkQueue.topLevelExec(ForkJoinPool.java:1020)
at java.base/java.util.concurrent.ForkJoinPool.scan(ForkJoinPool.java:1656)
at java.base/java.util.concurrent.ForkJoinPool.runWorker(ForkJoinPool.java:1594)
at java.base/java.util.concurrent.ForkJoinWorkerThread.run(ForkJoinWorkerThread.java:183)
Caused by: org.hibernate.exception.SQLGrammarException: could not extract ResultSet
at org.hibernate.exception.internal.SQLStateConversionDelegate.convert(SQLStateConversionDelegate.java:103)
at org.hibernate.exception.internal.StandardSQLExceptionConverter.convert(StandardSQLExceptionConverter.java:42)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:113)
at org.hibernate.engine.jdbc.spi.SqlExceptionHelper.convert(SqlExceptionHelper.java:99)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:67)
at org.hibernate.loader.Loader.getResultSet(Loader.java:2297)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2050)
at org.hibernate.loader.Loader.executeQueryStatement(Loader.java:2012)
at org.hibernate.loader.Loader.doQuery(Loader.java:948)
at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:349)
at org.hibernate.loader.Loader.doList(Loader.java:2843)
at org.hibernate.loader.Loader.doList(Loader.java:2825)
at org.hibernate.loader.Loader.listIgnoreQueryCache(Loader.java:2657)
at org.hibernate.loader.Loader.list(Loader.java:2652)
at org.hibernate.loader.hql.QueryLoader.list(QueryLoader.java:506)
at org.hibernate.hql.internal.ast.QueryTranslatorImpl.list(QueryTranslatorImpl.java:400)
at org.hibernate.engine.query.spi.HQLQueryPlan.performList(HQLQueryPlan.java:219)
at org.hibernate.internal.SessionImpl.list(SessionImpl.java:1414)
at org.hibernate.query.internal.AbstractProducedQuery.doList(AbstractProducedQuery.java:1636)
at org.hibernate.query.internal.AbstractProducedQuery.list(AbstractProducedQuery.java:1604)
at org.hibernate.query.Query.getResultList(Query.java:165)
at jdk.internal.reflect.GeneratedMethodAccessor197.invoke(Unknown Source)
at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.base/java.lang.reflect.Method.invoke(Method.java:566)
at org.springframework.orm.jpa.SharedEntityManagerCreator$DeferredQueryInvocationHandler.invoke(SharedEntityManagerCreator.java:409)
at com.sun.proxy.$Proxy308.getResultList(Unknown Source)
at org.springframework.data.jpa.repository.query.JpaQueryExecution$CollectionExecution.doExecute(JpaQueryExecution.java:126)
at org.springframework.data.jpa.repository.query.JpaQueryExecution.execute(JpaQueryExecution.java:88)
at org.springframework.data.jpa.repository.query.AbstractJpaQuery.doExecute(AbstractJpaQuery.java:154)
at org.springframework.data.jpa.repository.query.AbstractJpaQuery.execute(AbstractJpaQuery.java:142)
at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor$QueryMethodInvoker.invoke(QueryExecutorMethodInterceptor.java:195)
at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.doInvoke(QueryExecutorMethodInterceptor.java:152)
at org.springframework.data.repository.core.support.QueryExecutorMethodInterceptor.invoke(QueryExecutorMethodInterceptor.java:130)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.transaction.interceptor.TransactionAspectSupport.invokeWithinTransaction(TransactionAspectSupport.java:367)
at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:118)
at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:186)
at org.springframework.dao.support.PersistenceExceptionTranslationInterceptor.invoke(PersistenceExceptionTranslationInterceptor.java:139)
... 17 more
Caused by: org.postgresql.util.PSQLException: ERROR: column alarmentit0_.propagate_to_owner does not exist
Position: 460
at org.postgresql.core.v3.QueryExecutorImpl.receiveErrorResponse(QueryExecutorImpl.java:2553)
at org.postgresql.core.v3.QueryExecutorImpl.processResults(QueryExecutorImpl.java:2285)
at org.postgresql.core.v3.QueryExecutorImpl.execute(QueryExecutorImpl.java:323)
at org.postgresql.jdbc.PgStatement.executeInternal(PgStatement.java:481)
at org.postgresql.jdbc.PgStatement.execute(PgStatement.java:401)
at org.postgresql.jdbc.PgPreparedStatement.executeWithFlags(PgPreparedStatement.java:164)
at org.postgresql.jdbc.PgPreparedStatement.executeQuery(PgPreparedStatement.java:114)
at com.zaxxer.hikari.pool.ProxyPreparedStatement.executeQuery(ProxyPreparedStatement.java:52)
at com.zaxxer.hikari.pool.HikariProxyPreparedStatement.executeQuery(HikariProxyPreparedStatement.java)
at org.hibernate.engine.jdbc.internal.ResultSetReturnImpl.extract(ResultSetReturnImpl.java:57)
... 50 more
quote
I am facing issue while loading ftl as I am getting the issue with binding data to it.
My code is somewhat like this:-
Map<String, DownloadReportBean> rootMap = new HashMap<String, DownloadReportBean>();
DownloadReportBean reportDetails = new DownloadReportBean();
List<EmailReportLinks> links = new ArrayList<EmailReportLinks>();
for (Map.Entry<String, String> entry : filenames.entrySet()) {
EmailReportLinks link = new EmailReportLinks();
link.setRange(entry.getValue());
link.setLink(generateDownloadlinkEmail(entry.getKey()));
links.add(link);
}
reportDetails.setName(user.getUsername());
reportDetails.setLinks(links);
reportDetails.setDate("" + new Date());
rootMap.put("reportDetails", reportDetails);
sendMailDownloadReport(emailid, subject, rootMap, report.ftl);
<#list reportDetails.links as linkobj> From Range
${linkobj.range},Refer- ${linkobj.link}
I also tried this but results are same.
<#list reportDetails.getLinks() as linkobj> From Range
${linkobj.range},Refer- ${linkobj.link}
I am not getting where I am doing wrong.
Following is the trace I am getting.
ERROR [freemarker.runtime] (default task-20) Template processing error: "Expression linkobj.range is undefined on line 62, column 14 in downloadreport.ftl.": freemarker.core.InvalidReferenceException: Expression linkobj.range is undefined on line 62, column 14 in downloadreport.ftl.
at freemarker.core.TemplateObject.assertNonNull(TemplateObject.java:125)
at freemarker.core.Expression.getStringValue(Expression.java:118)
at freemarker.core.Expression.getStringValue(Expression.java:93)
at freemarker.core.DollarVariable.accept(DollarVariable.java:76)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.IteratorBlock$Context.runLoop(IteratorBlock.java:179)
at freemarker.core.Environment.visit(Environment.java:428)
at freemarker.core.IteratorBlock.accept(IteratorBlock.java:102)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.MixedContent.accept(MixedContent.java:92)
at freemarker.core.Environment.visit(Environment.java:221)
at freemarker.core.Environment.process(Environment.java:199)
at freemarker.template.Template.process(Template.java:237)
at com.ecomm.pl4sms.utility.GenerateEmail.sendMailDownloadReport(GenerateEmail.java:217)
at com.ecomm.pl4sms.utility.GenerateEmail.generateDownloadlinkNew(GenerateEmail.java:1119)
at com.pl4sms.webmodule.service.ClientService.generateFileAndSendEmail(ClientService.java:2202)
at com.pl4sms.webmodule.service.ClientService.downloadByDateSqlBoxtestcheck(ClientService.java:1880)
at com.pl4sms.webmodule.controller.ClientController.doDownloadtesting(ClientController.java:1210)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:498)
at org.springframework.web.method.support.InvocableHandlerMethod.invoke(InvocableHandlerMethod.java:215)
at org.springframework.web.method.support.InvocableHandlerMethod.invokeForRequest(InvocableHandlerMethod.java:132)
at org.springframework.web.servlet.mvc.method.annotation.ServletInvocableHandlerMethod.invokeAndHandle(ServletInvocableHandlerMethod.java:104)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.invokeHandleMethod(RequestMappingHandlerAdapter.java:749)
at org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter.handleInternal(RequestMappingHandlerAdapter.java:689)
at org.springframework.web.servlet.mvc.method.AbstractHandlerMethodAdapter.handle(AbstractHandlerMethodAdapter.java:83)
at org.springframework.web.servlet.DispatcherServlet.doDispatch(DispatcherServlet.java:938)
at org.springframework.web.servlet.DispatcherServlet.doService(DispatcherServlet.java:870)
at org.springframework.web.servlet.FrameworkServlet.processRequest(FrameworkServlet.java:961)
at org.springframework.web.servlet.FrameworkServlet.doGet(FrameworkServlet.java:852)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:687)
at org.springframework.web.servlet.FrameworkServlet.service(FrameworkServlet.java:837)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at io.undertow.servlet.handlers.ServletHandler.handleRequest(ServletHandler.java:85)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:129)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:330)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.invoke(FilterSecurityInterceptor.java:118)
at org.springframework.security.web.access.intercept.FilterSecurityInterceptor.doFilter(FilterSecurityInterceptor.java:84)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.ExceptionTranslationFilter.doFilter(ExceptionTranslationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.session.SessionManagementFilter.doFilter(SessionManagementFilter.java:103)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AnonymousAuthenticationFilter.doFilter(AnonymousAuthenticationFilter.java:113)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.servletapi.SecurityContextHolderAwareRequestFilter.doFilter(SecurityContextHolderAwareRequestFilter.java:154)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.savedrequest.RequestCacheAwareFilter.doFilter(RequestCacheAwareFilter.java:45)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.www.BasicAuthenticationFilter.doFilter(BasicAuthenticationFilter.java:150)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.AbstractAuthenticationProcessingFilter.doFilter(AbstractAuthenticationProcessingFilter.java:199)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.authentication.logout.LogoutFilter.doFilter(LogoutFilter.java:110)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.request.async.WebAsyncManagerIntegrationFilter.doFilterInternal(WebAsyncManagerIntegrationFilter.java:50)
at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:107)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.context.SecurityContextPersistenceFilter.doFilter(SecurityContextPersistenceFilter.java:87)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.access.channel.ChannelProcessingFilter.doFilter(ChannelProcessingFilter.java:144)
at org.springframework.security.web.FilterChainProxy$VirtualFilterChain.doFilter(FilterChainProxy.java:342)
at org.springframework.security.web.FilterChainProxy.doFilterInternal(FilterChainProxy.java:192)
at org.springframework.security.web.FilterChainProxy.doFilter(FilterChainProxy.java:160)
at org.springframework.web.filter.DelegatingFilterProxy.invokeDelegate(DelegatingFilterProxy.java:344)
at org.springframework.web.filter.DelegatingFilterProxy.doFilter(DelegatingFilterProxy.java:261)
at io.undertow.servlet.core.ManagedFilter.doFilter(ManagedFilter.java:61)
at io.undertow.servlet.handlers.FilterHandler$FilterChainImpl.doFilter(FilterHandler.java:131)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
at io.undertow.servlet.handlers.FilterHandler.handleRequest(FilterHandler.java:84)
at io.undertow.servlet.handlers.security.ServletSecurityRoleHandler.handleRequest(ServletSecurityRoleHandler.java:62)
at io.undertow.servlet.handlers.ServletDispatchingHandler.handleRequest(ServletDispatchingHandler.java:36)
at org.wildfly.extension.undertow.security.SecurityContextAssociationHandler.handleRequest(SecurityContextAssociationHandler.java:78)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet.handlers.security.SSLInformationAssociationHandler.handleRequest(SSLInformationAssociationHandler.java:131)
at io.undertow.servlet.handlers.security.ServletAuthenticationCallHandler.handleRequest(ServletAuthenticationCallHandler.java:57)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.security.handlers.AbstractConfidentialityHandler.handleRequest(AbstractConfidentialityHandler.java:46)
at io.undertow.servlet.handlers.security.ServletConfidentialityConstraintHandler.handleRequest(ServletConfidentialityConstraintHandler.java:64)
at io.undertow.security.handlers.AuthenticationMechanismsHandler.handleRequest(AuthenticationMechanismsHandler.java:60)
at io.undertow.servlet.handlers.security.CachedAuthenticatedSessionHandler.handleRequest(CachedAuthenticatedSessionHandler.java:77)
at io.undertow.security.handlers.NotificationReceiverHandler.handleRequest(NotificationReceiverHandler.java:50)
at io.undertow.security.handlers.AbstractSecurityContextAssociationHandler.handleRequest(AbstractSecurityContextAssociationHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at org.wildfly.extension.undertow.security.jacc.JACCContextIdHandler.handleRequest(JACCContextIdHandler.java:61)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.server.handlers.PredicateHandler.handleRequest(PredicateHandler.java:43)
at io.undertow.servlet.handlers.ServletInitialHandler.handleFirstRequest(ServletInitialHandler.java:292)
at io.undertow.servlet.handlers.ServletInitialHandler.access$100(ServletInitialHandler.java:81)
at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:138)
at io.undertow.servlet.handlers.ServletInitialHandler$2.call(ServletInitialHandler.java:135)
at io.undertow.servlet.core.ServletRequestContextThreadSetupAction$1.call(ServletRequestContextThreadSetupAction.java:48)
at io.undertow.servlet.core.ContextClassLoaderSetupAction$1.call(ContextClassLoaderSetupAction.java:43)
at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
at io.undertow.servlet.api.LegacyThreadSetupActionWrapper$1.call(LegacyThreadSetupActionWrapper.java:44)
at io.undertow.servlet.handlers.ServletInitialHandler.dispatchRequest(ServletInitialHandler.java:272)
at io.undertow.servlet.handlers.ServletInitialHandler.access$000(ServletInitialHandler.java:81)
at io.undertow.servlet.handlers.ServletInitialHandler$1.handleRequest(ServletInitialHandler.java:104)
at io.undertow.server.Connectors.executeRootHandler(Connectors.java:202)
at io.undertow.server.HttpServerExchange$1.run(HttpServerExchange.java:805)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
ERROR [stderr] (default task-20) freemarker.core.InvalidReferenceException: Expression linkobj.range is undefined on line 62, column 14 in report.ftl.
Any Help would be very much Appreciable.
This just means that the range in some of those EmailReportLinks-s is null, and as you didn't handle that situation in the template, it will fail there. You have to decide what should it do in that case.
I have a Sphinx-configuration where I can't succeed to insert some contents of documents. I have a string of almost 6MB, which I can't insert completely. I tested this by querying back the inserted value and I get back only a part of the entire content. Lets say around 0.8MB.
The configuration of Sphinx:
index RTTest
{
type = rt
path = /mnt/data001/RTTest
rt_field = Name
rt_field = Extension
rt_field = Content
rt_field = Tags
rt_attr_uint = Reference
rt_attr_uint = FileSize
rt_attr_uint = LastModified
rt_attr_uint = LastModifiedYear
rt_attr_uint = LastModifiedMonth
rt_attr_uint = LastModifiedDay
stored_fields = Content
}
searchd
{
listen = 9306:mysql41
log = /var/log/sphinxsearch/searchd.log
read_timeout = 100
max_children = 30
pid_file = /var/run/searchd.pid
max_packet_size = 128M
binlog_path = /mnt/data001
}
I have already checked the logging at /var/log/sphinxsearch/searchd.log. No errors, warnings or notices there... Neither there are errors thrown during the insert. I use the MySQL connector to connect to Sphinx as you can see in the configuration. I tested this by creating a syntax error and the error is successfully catched.
So, I have a situation where I can't insert the full content, however Sphinx nor MySQL throw or log any errors? Besides, I have been able to reproduce this issue on two other machines with an empty index using the same configuration?
What am I doing wrong?
My environment is Ubuntu 16.04LTS, Sphinx 2.2.9-id64-release and MySQL 5.7.22-0ubuntu0.16.04.1
EDIT:
Link to the file containing the insert command and the queried value
UPDATE:
I have updated to Sphinx3 and changed the rt_attr_field for docstore (stored_fields) directive. I have rebuild the index and when I'm inserting new content to the index, it still fails to insert the entire document content. I have an example below with both the query and the returned value:
INSERT INTO RTTest(id, Name, Extension, Content, Tags, Reference, FileSize, LastModified, LastModifiedYear, LastModifiedMonth, LastModifiedDay) VALUES(1774, 'DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7WtXmnUHLGt2', '7A5A5Q', 'FAUsvCA% FAUsvCA% BA8s Fg8sqy4D BA8s9jcJzE5TXysiVnBiOjr8YRE% AB0% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% DgM% AgMjtiQ% Ag84vQ%% UFo% CwMsrTEDzA%% DgsmvCAI EQ8% CAMnrA%% AgUtqg%% CwUlvSs% BA8uuTYSx0Q% EA8woioDyQ%% EAss Eg8wvTYH AQ81vSAV1g%% CQc% Aw8s BwssrCQK Dx4ntTY% Eg8% BQInuy4DzA%% Cwsjqg%% AgM2 EQsx Cw82 Aw8s FA8mvSs% Agsjqg%% CQQ4vQ%% FQE3 Ags2uQ%% CAMnrA%% BQUwqiAF1g%% Cw8nqg%% DwQ% Dg82 FRMxrCADzw%% FR4ttiE% HAMotg%% Axg% EAUtqg%% Aw8s Fgsjqg%% CRgmvTcV Ag84vQ%% Dx4ntTY% FRMxrCALw15fbDgv CAMnrA%% AQ8xvSkDwV5Teikj DwE% HAsu Axg0tyoU HAUwvyAI Ags2 Ag84vQ%% CRo% Ag8% DwQ0tywFxw%% EAss AA8gqjAH0EM% AQ8hqiACy15Teikj AQsjrA%% EQUwvCAI HAsu DwQ% Ag8% BAMotCQBxw%% EAsx CRolvSsJz09Y EQUwvCAI AxIhrTYD0Q%% EAUtqg%% Dg82 CQQlvSgHyQ%% C0Q09iI% BA8s ABgttQ%% AgMjtiQ% AgMntCwV0U9Y AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% FQ8srA%% Eh8nqyEH2w%% AA8gqjAH0FM% V10% VFpz7Q%% VVB27Q%% Fgc% EgU% DwQ2vTcCx1lfeDU% FgYn Fg8sqy4D BQk% FAUsvCA% BA8s Fg8sqy4D FR8gsiAF1g%% AB0% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% DQMsvA%% FA8luTcC0Q%% Cw82 EBgrvSsCx0ZfdTAi ARgtvTEDzA%% AgMjtiQ% AgMntCwV0U9Y FQ8j ABgnsSIO1g%% DwcytzcS CRonqiQSzVg% FAUqtCwB CA8mvTcKw0RS BEQ0 EQ8ntiQ% VFpy BB8rtCEPzE0% EQ8ntiQ% VV5w EgU1vTc% Bw%% V1gktA%% VVpz6g%% CAA% FAU2rCAUxktb Eg8u VVs% V1o% VFI% VF8% VFhx AAs6 VVs% V1o% VFI% VF8% VF5w AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% ER019jcJykZfeHUkV24% ABgttQ%% Eg8wvTYH FQsgtyk% Eg8wvTYHjFlXfTQreGpnK32n1;CdScZYKYkp9ov4zQ%% FQ8srA%% CwUsvCQf AA8gqjAH0FM% V1w% VFpz7Q%% UlBy4A%% Fgc% EgU% AgMjtiQ% AgMntCwV0U9Y FR8gsiAF1g%% AB0% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% DgM% AgMjtiQ% Dw%% Dgs0vQ%% FRotsyAI EQM2sA%% DAsxtys% BwQm Dg8% Dxk% Bx0jqiA% EgIjrA%% Dw%% AgU% CAU2 Dgs0vQ%% EQ8gqywSxw%% BwkhvTYV CQQ% FAUqtCwBTZWLbA%% FQM2vQ%% Bxgn HwU3 BwguvQ%% EgU% CQg2uSwI CwU0vSgDzF4% FA8ytzcS0Q%% CQQ% Dx4ntQ%% FQ%% Dww% Dw%% CA8nvA%% EgIntQ%% BQss HwU3 FgYnuTYD Dgs0vQ%% Fg8sqy4D FhgtriwCxw%% AB8wrC0D0A%% DwQktzcLw15fcDU% AAUw EgIrqw%% AwQ2qjw% UEcouSs% FR4tuy4% BQU3tjE% Eg8wvTYH UFo% CwsrtA%% Eg8wvTYH Cws% U0dz9XdWkx8% V1947X0% Cws% U0dz9XdWkx8% V1x46XQ% EgIjti4% HwU3 Eg8wvTYH FQsgtyk% Fh8wuy0H0UNYeA%% BxkxtyYPw15T Ul5y9XdSmgcGLmx; Hll06w%% ABgttQ%% AgMjtiQ% AgMntCwV0U9Y AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% FQ8srA%% CwUsvCQf AA8gqjAH0FM% V1w% VFpz7Q%% X1By6A%% Bwc% EgU% Eg8wvTYH FQsgtyk% FR8gsiAF1g%% FA8% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% Ag8jqg%% Eg8wvTYH FQ8n Bx42uSYOx04% DQMsvA%% FA8luTcC0Q%% Cw82 EBgrvSsCx0ZfdTAi ARgtvTEDzA%% AgMjtiQ% AgMntCwV0U9Y FQ8j ABgnsSIO1g%% DwcytzcS CRonqiQSzVg% FAUqtCwB CA8mvTcKw0RS BEQ0 EQ8ntiQ% VFpy BB8rtCEPzE0% EQ8ntiQ% VV5w EgU1vTc% Bw%% V1gktA%% VVpz6g%% CAA% FAU2rCAUxktb Eg8u VVs% V1o% VFI% VF8% VFhx AAs6 VVs% V1o% VFI% VF8% VF5w AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% ER019jcJykZfeHUkV24% ABgttQ%% Eg8wvTYH FQsgtyk% Eg8wvTYHjFlXfTQreGpnK32n1;CdScZYKYkp9ov4zQ%% FQ8srA%% CwUsvCQf AA8gqjAH0FM% V1w% VFpz7Q%% VVBy6A%% Fgc% EgU% AgMjtiQ% AgMntCwV0U9Y FR8gsiAF1g%% AB0% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% DgM% AgMjtiQ% AgU% HwU3 Dgs0vQ%% Bw%% FQInvTE% EgIjrA%% FQItrzY% EgIn EAsx BQIjqiID0Q%% EgInoQ%% Bxgn CA8jqikf AgU3uikD EQIjrA%% EgInoQ%% Exk3uSkK2w%% Bxgn Eg8wvTYH FQsgtyk% Fh8wuy0H0UNYeA%% BxkxtyYPw15T Ul5y9XdSmgcGLmx; Hll06w%% ABgttQ%% AgMjtiQ% AgMntCwV0U9Y AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% FQ8srA%% CwUsvCQf AA8gqjAH0FM% V1w% VFpz7Q%% XlBx7w%% Bwc% EgU% Eg8wvTYH FQsgtyk% FR8gsiAF1g%% DwQ2vTcCx1lfeDU% DwQ0tywFxw%% DAssrSQU2w%% VFpz7Q%% Ag8jqg%% Eg8wvTYH BQss HwU3 CQE% EgIn Bx42uSYOx04% FQInvTE% EgIjti4V DQMsvA%% FA8luTcC0Q%% Cw82 EBgrvSsCx0ZfdTAi ARgtvTEDzA%% AgMjtiQ% AgMntCwV0U9Y FQ8j ABgnsSIO1g%% DwcytzcS CRonqiQSzVg% FAUqtCwB CA8mvTcKw0RS BEQ0 EQ8ntiQ% VFpy BB8rtCEPzE0% EQ8ntiQ% VV5w EgU1vTc% Bw%% V1gktA%% VVpz6g%% CAA% FAU2rCAUxktb Eg8u VVs% V1o% VFI% VF8% VFhx AAs6 VVs% V1o% VFI% VF8% VF5w AgMjtiRIxkNTczI0S2ZnH51RoVnYBIbuBLY% ER019jcJykZfeHUkV24% FgYjuyA% CQw% DB8wsTYCy0lCdjQp EgIn CA82sCAUzktYeyg% FAU2rCAUxktb EhgjvCA% FA8lsTYSx1g% FAU2rCAUxktb CBhs6nFWmhMALWs% EgIn Ah82uy0% AAUwryQUxkNYeA%% BQUsvCwSy0VYbA%% DwQ% EgIn Cgs2vTYS EA8wqywJzA%% Ag8ytzYP1k9S BBM% AA8svT0% Bx4% EgIn FA8lsTYS0FM% CQw% EgIn AgMxrDcPwV4% BQU3qjE% Bx4% FAU2rCAUxktb FQIjtCk% BxoytDw% EgIn BQUsvCwSy0VYbA%% EQMutA%% BA8% FQ8srA%% EgU% HwU3 CQQ% FA8zrSAV1g%% FhgrriwKx01Te3QkV21vNrJfYupkLoM% DwQktzcLw15fcDU% Cws7 BA8% BQUsrCQPzE9S DwQ% EgIrqw%% Cw8xqyQBxw%% BwQm FhgtrCAF1k9S BBM% Bw%% FhgtviAV0UNZcTor FhgrriwKx01T CRg% EQItqyA% AgMxuykJ0V9Eeg%% BBM% Bw%% Cgs1 Dww% HwU3 Bxgn CAU2 EgIn Bw4mqiAV0U9T DwQmsSYH1k9S DwQ% EgIrqw%% Cw8xqyQBxw%% HwU3 Cws7 CAU2 BQUyoQ%% CRg% Ag8usTMD0A%% EgIrqw%% Cw8xqyQBxw%% EgU% BwQ7tysD DwQ% FR8hsA%% BQsxvQ%% HwU3 FQItrSkC Ag8xrDcJ2w%% EgIrqw%% Cw8xqyQBxw%% BwQm CAU2sSMf Exk% DwcvvSEPw15TcyI% DwQ2vTcIx14% A0cvuSwK CA8rrC0D0A%% AR8jqiQI1k9TbA%% EgIn BQUsviwCx0RCdjorUXdw CAUw EgIn DwQ2vSIUy15P CRg% FhgtqCAU FA8hvSwW1g%% CQw% EgIn Cw8xqyQBx1k% FQ8srA%% FKn0sCkPxQ%% AgUnqw%% CAU2 BxkxrSgD BwQ7 CgMjuiwKy15P AAUw EgItqyA% BQMwuzAL0V5XcTgiSw%% Dww% EgIn Bw4mqiAV0U9T CQw% EgIrqw%% Cw8xqyQBxw%% AgUnqw%% CAU2 BQUsqyAI1g%% EgU% EgIn Exkn CQw% DwQ2vTcIx14% A0cvuSwK BwQm Cw8xqyQBxw%% FA8htzcCy0RR FgYnuTYD CAU2sSMf Exk% DwcvvSEPw15TcyI% EAsx VFpz7Q%% Ags2rSg% CRgmvTcI10dbeik% FA82rTcI Bw4vsSs% CwMs FA82rTcI DwQgtzAIxg%% BQInuy4% EQswvS0J11lT CwMs FA82rTcI Fh82uTIH2w%% EQswvS0J11lT CwMs EgA6 CgsgvSkV FQE3 DgMxrCoU2w%% FR4tuy4% BQInuy4% EwQuvTYV Fg8sqy4D BwkhtzAI1ktUcz4% AAUw FgMhsw%% Axgwtzc% AQ8wtSQI2w%% CgsgvSkV BwcjoioI CgsgvSkV CwsrtDY% BwgtrTE% EwQptioRzA%% CRgmvTcV CRgmvTc% BQIjtiID0Q%% DwQ% CRgmvTc% Dg8jvA%% Ags2uQ%% Bw4mqiAV0Q%% CRgmvTc% BQIjtiID0Q%% DwQ% Dx4ntSkPzE8% Vg%% Dx4ntQ%% CgMsvQ%% CR82 CQw% FR4tuy4% Dx4ntQ%% CgMsvQ%% BQIjtiID EgIn FR4jrDAV CQw% Bw%% FR4tuy4% Dx4ntQ%% CR4qvTcV EQM2sA%% FA8vuTcN0Q%% FA8vuTcN0Q%% EQ8nsw%% VA%% U0couStLkx8% FFhw6n1elx0E V1o% V1o% UEcouSs% FR4tuy4% BQU3tjE% Eg8wvTYH UFo% CwsrtA%% Eg8wvTYH Cws% U0dz9XdWkx8% V1947X0% Cws% U0dz9XdWkx8% V1x46XQ% UUcouSs% VFhx6HxRlRI% VVo% VVo% VA%% CwsrtA%% EAMhsyw% AgM% UEdz9XdWkx8% V1J46nA% XkcouSs% VFhw4Xxemx8% Vw%% XkcouSs% VFhx6XVXkh0% VQ%% Vw%% X0couSs% VFhx6XVXkxo% VQ%% VQ%% X0couSs% VFhx6Hxekhw% Vw%% EQ8nsw%% VQ%% V1hvsiQIjxsD VFhx6H1UkBM% VVo% VVo% V18% V1lvsiQI VFhx6XVXlRw% VQ%% Vw%% V1lvsiQI VFhx6XVXkxI% Vw%% V1lvsiQI VFhx6XVXkx8% Vw%% V1lvsiQI VFhx6XVXkxg% VA%% Vw%% V1lvsiQI VFhx6XVXkxk% Vw%% V1xvsiQI VFhx6XRUlBM% VA%% V1xvsiQI VFhx6XVemxw% VA%% V1xvsiQI VFhx6XVfkhg% Vw%% V1xvsiQI VFhx6XVemx0% Vw%% V1xvsiQI VFhx6XVUmx0% VQ%% Vw%% V1xvsiQI VFhx6XJRkx0% Uw%% Uw%% V1xvsiQI VFhx6XJQlB0% VA%% VA%% V1xvsiQI VFhx6XJSkR4% VQ%% VQ%% V1xvsiQI VFhx6XJVmhM% Vw%% Vw%% V1xvsiQI VFhx6XJVkx4% Xg%% Xg%% V1xvsiQI VFhx6XJUmxs% VA%% V1xvsiQI VFhx6XJUmxI% VA%% CgsgvSkPzE0% EgA6 CR82uioTzE4% BAU6vTY% V1xvsiQI VFhx6XJRkBw% Vw%% V1xvsiQI Ag9y6HELzw%% V18% V18% V1o% V1xvsiQI FFlz6XdXlg%% V18% UFo% V1o% V1xvsiQI Ag9y6nULzw%% V18% V18% V1o% V1xvsiQI Ag9z6nVXkx8% V18% X1o% V1o% EQ8nsw%% Vl4% V1NvsiQI VFhx6XJVlBo% Uw%% Uw%% V1NvsiQI VFhx6XJRkx8% UA%% UA%% V1NvsiQI VFhx6XJVkxg% VA%% Vw%% V1NvsiQI VFhx6XJRkB4ZLWl0CTQ6ZygcJiCK3W8vGyk% Vw%% V1NvsiQI VFhx6XJSkB0% VQ%% V1NvsiQI VFhx6XJRkR0dLWl0CTQ6b5Q% VA%% V1NvsiQI VFhx6XJVkxwdLWl0CTQ9a_I% VA%% Vw%% V1NvsiQI VFhx6XJVkxkdLWl0CTQ7Zs3zC;c6n28q2RU% Vw%% V1NvsiQI VFhx6XJVkhgdLWl0CTQ7Zp7Ntwb02r3fPhA% Vw%% V1NvsiQI VFhx6XJVkhIdLWl0CTQ6b4BTBpomHInCJM8% Vw%% V1NvsiQI VFhx6XJRkxwdLWl0CTQ6b2g% VA%% Vw%% VFpvsiQI FFt06HRXlw%% V18% UFo% V1o% VFtvsiQI FFhw63RTkRIF VFo% V18% Uw%% VFtvsiQI FA82rTcIxU9ZezI0 V1o% V1o% Uw%% VFtvsiQI FA82rTcI10EGL2oqVQ%% V18% Ul8% V18% VFhvsiQI Ulpz6HFQlxM% UVJy CgUtqyA% CgUjvCwIxQ%% BQUsrCQPzE9E UFo% CwMsqw%% CQwksSYD UVhy CwMsqw%% EQswvS0J11lT VFlvsiQI VFhx6nFWlR4% Ug%% VFlvsiQI VFhx6nZVlh4% VQ%% VFlvsiQI VFhx6nVfkRo% VQ%% VFlvsiQI VFhx6nZVlhs% VQ%% VFlvsiQI VFhx6nZVkR8% Uw%% VFlvsiQI VFhx6nBflx4% Ug%% VFlvsiQI VFhx6nNVkhI% Vw%% VFlvsiQI VFhx6nVfkxw% Ug%% VFlvsiQI VFhx6XJVkhMZLGtyFzc6bg%% Vw%% VFlvsiQI FFhw6nNTkBgC Ul8% VVo% V18% EQ8nsw%% Vl8% VFxvsiQI Ulpz6HFQlxI% UVJy CgUtqyA% CgUjvCwIxQ%% BQUsrCQPzE9E UFo% CwMsqw%% CQwksSYD UVhy CwMsqw%% EQswvS0J11lT VF1vsiQI VFhx6nNVkhw% VQ%% VQ%% VF1vsiQI VFhx6nBflRI% VA%% VA%% VF1vsiQI VFhx6nxSmxM% Vw%% Vw%% VF1vsiQI VFhx6nBflBk% VA%% Vw%% VF1vsiQI VFhx6nBfkxw% VQ%% VF1vsiQI VFhx6nBRmxw% VFhx6nNVkh4% VA%% VF1vsiQI VFhx6nBflBg% VFhx6nNWlxk% VA%% VF1vsiQI VFhx6nBflB8% Vw%% VF1vsiQI VFhx6nNVkxo% Vw%% VF1vsiQI VFhx6nNVkhk% VFhx6nBflBo% VA%% VF1vsiQI VFhx6nNVkxs% Vw%% VF1vsiQI VFhx6nBflB0% VFhx6nNWlh8% VQ%% VF1vsiQI VFhx6nBflR0% VFhx6nBekB8% VA%% VF1vsiQI FAsvuXdRkhs% V1o% V1o% V1o% VF1vsiQI EwFy6HELzw%% V18% U1o% V1o% VF1vsiQI FAsvondRkhs% V1o% V18% V1o% VFJvsiQI VFhx6nNVkh8% VQ%% VFJvsiQI VFhx6nBfkxI% VQ%% DwQhtDACy0RR EgIrqw%% CgMsvQ%% DwQ0tywFx04% CQQ% VVpt6HQ% EQ8nsw%% Vlw% VUckvSc% VFhx63dQlh0% Xg%% Xg%% VUckvSc% VFhx63dRlR0% Vw%% Vw%% VUckvSc% VFhx63dQlhs% Vw%% Vw%% VUckvSc% VFhx63dRkBM% VA%% VA%% VUckvSc% VFhx63dRlRo% Vw%% Vw%% VUckvSc% VFhx63dRkRk% Vw%% Vw%% VUckvSc% VFhx63dQkRIdLWl0CzE;a7M% VA%% VUckvSc% VFhx63dRlBIdLWl0CzE_azw% VA%% VUckvSc% VFhx63dRlxw% Vw%% VUckvSc% VFhx63FUkRo% Vw%% VUckvSc% VFhx63dRlxk% Vw%% VUckvSc% VFhx63dQlxodLWl0CzE_bkE% VA%% UkckvSc% VFhx63FUkRM% Ug%% UkckvSc% VFhx63ZelxI% Ug%% UkckvSc% VFhx63dQlh4% VQ%% UkckvSc% VFhx63dQlh8% VQ%% UkckvSc% FA82uykPwUJP V1o% V1o% V1o% UkckvSc% FA826HFWkBsD V1o% VV8% V1o% U0ckvSc% FA826ndVkxoOJmw% VFo% U1o% U1o% UEckvSc% VFhx63JSlB8% Ug%% UEckvSc% VFhx631Vlx0% Ug%% UEckvSc% VFhx631Vlx8dLWl0CzQ9ae8% Ug%% UEckvSc% VFhx631VlBo% Ug%% UEckvSc% VFhx63xXkR0% Ug%% UEckvSc% VFhx631VlxM% Ug%% UEckvSc% VFhx631VlB4% VA%% UEckvSc% VFhx631Vlxw% Ug%% UEckvSc% VFhx63xXkRw% Ug%% UEckvSc% VFhx7HRRkBk% VQ%% UEckvSc% VFhx7HRRkB0% VA%% UEckvSc% VFhx7HRRkB8% Uw%% UEckvSc% FA826ndVkxoOJmw% Ul8% Ulo% UFo% EQ8nsw%% UQ%% V1pvviAE VFhx7HRSlxw% UQ%% UQ%% V1pvviAE VFhx7HRRkxw% VA%% Uw%% V1pvviAE VFhx7HRSmh8% VA%% Uw%% V1pvviAE VFhx7HRRkBo% Vw%% Ug%% V1pvviAE VFhx7HRQkRg% Vw%% Ug%% V1pvviAE VFhx7HRSlx4% Vw%% Ug%% V1pvviAE VFhx7HRRkxM% VQ%% V1g% V1pvviAE VFhx7HRSmh4% VQ%% V1g% V1pvviAE VFhx7HRSlx0% VA%% Xg%% V1pvviAE VFhx7HRSlRI% VA%% Xg%% V1pvviAE VFhx7HVRlhg% VFhx7HRSlxk% VQ%% V1g% V1pvviAE VFhx7HRRkBs% VFhx7HRSlxg% VA%% Xg%% V1tvviAE VFhx7HVRkR0% Ug%% V1tvviAE VFhx7HVRkBk% Ug%% V1tvviAE VFhx7HVRkh8% Ug%% V1tvviAE VFhx7HVRkRI% Ug%% V1tvviAE VFhx7HVRkRM% Ug%% V1lvviAE VFhx7XRUkRgdLWl0DTI7b_FgTfqV5NfXkDQ% Ug%% V1lvviAE VFhx7XRQkB4dLWl0DTMwa8o% Ug%% V1lvviAE VFhx7HBRkhg% VA%% V1lvviAE VFhx7XRVkhs% Uw%% V1lvviAE VFhx7XdWmhw% VFhx7HJWmxo% Ug%% VFhx7XdWmxsdLWl0DDY_bc7vhv1tUNnExD4% Ug%% VFhx7XdWmx4dLWl0DDY;aptefrABxl_rE9U% Ug%% VFhx7XdWmhkdLWl0DTE5ZzASMD2MWREPqxc% Ug%% VFhx7HBRlxw% Ug%% VFhx7XRWlBk% Ug%% VFhx7HFSlB4% Ug%% VFhx7XVelh0dLWl0DTE5Zhnz;us2xm4e8uNVWaCI7x0hr7g% Ug%% VFhx7XVelx4% Ug%% VFhx7HBQkBk% Ug%% VFhx7XVelBw% Ug%% VFhx7HRRkB4% VQ%% Ag8hvSgEx1g% Vg%% Vg%% Vg%% Vg%% Vg%% Vg%% Vg%% VF0% Vg%% Vg%% Vg%% Vg%% Vg%% FA8gvSYFww%% BxoyvSkJ VA%% CwMsrTED0Q%% Fg8w CgsgvSk% FA8gvSYFww%% BxoyvSkJ VA%% CwMsrTED0Q%% Fg8w CgsgvSk% FA8gvSYFww%% BxoyvSkJ FA8gvSYFww%% BxoyvSkJ VA%% CwMsrTED0Q%% Fg8w CgsgvSk% FQInvTFX EBgrvTYL Vw%% FgsutCASzktUejc% Dxk% FR4jtiEHw1hS', '', 11, 1021089, 1503999582, 2017, 8, 29);
When I query the value with: SELECT content FROM RTTest WHERE id=1774; I get the value:
FAUsvCA% FAUsvCA% BA8s Fg8sqy4D BA8s9jcJzE5TXysiVnBiOjr8YRE% AB0% Fg8sqy4D BQUvqCkHy0RC AAUwtQ%% EgIn DgUuvCwIxQ%% BQU% DgM% Ag8jtg%% Dw%% EgItrSIO1g%% Dw%% BwYwvSQC2w%% AQs0vQ%% HwU3 BwQ% BwQxryAU CQQ% EgIrqw%% BQUvqCkHy0RC BB82 BQsstioS AAMsvA%% BwQ7 AwcjsSk% ABgttQ%% CxM% FQMmvQ%% FQU% Bx4% AAMwqzE% CxM% BxottCoBy1BTbA%% EQ8% Dgs0vQ%% DwQ0vTYSy01Xaz4j EgIrqw%% BQUvqCkHy0RC BBM% BQInuy4PzE0% CR8w FgI7qywFw0Y% FR4tuy4% BwkhtzcCy0RR EgU% CR8w Bw4vsSsP0V5Efi8uTmY% FR4tuy4% AAUwrDAIw15TcyI% EgInqyA% AgU% Cws2uy0% BwYxtw%% EgIn CB8vuiAU CQw% BAU6vTY% EQIruy0% FQItrSkC Dgs0vQ%% BA8ntg%% FgMhsyAC AAUw EgIrqw%% FQIrqCgDzF5F AgUnqw%% Cws2uy0% EgIn CB8vuiAU CQw% BAU6vTY% EQ8% FQItrSkC Dgs0vQ%% BA8ntg%% FgMhsywIxQ%% BwkhtzcCy0RR EgU% EgIrqw%% DwQktzcLw15fcDU% Dw%% BQss CQQuoQ%% BQUsuykTxk8% EgIjrA%% EQ8% Dgs0vQ%% FQIrqDUDxg%% CR82 EgIn BQUwqiAF1g%% Fx8jtjEP1kNTbA%% AAUw EgIrqw%% FQIrqCgDzF4% FQU% Fg8sqy4D CAU2 BwkhtzAI1ktUcz4% DgUyvQ%% EgU% DwQktzcLx04% HwU3 FR8kviwFy09Yaw%% FA8luTcC0Q%% BA8s ABgttQ%% BwQsuQ%% AxMu BwQsuWsD20Z2djUzXXFtOsW2NhQOEHrd7KpL FQ8srA%% CwUsvCQf Cwswuy0% VVs% VFpz7A%% V1t46XA% Fgc% EgU% Ag8jtmsLzUVEehs1V2tlNsvV0Fr0 FAUqtCwB FgYn Fg8sqy4D FR8gsiAF1g%% Fg8sqy4D BQUvqCkHy0RC AAUwtQ%% EgIn DgUuvCwIxQ%% BQU% Ag8jqg%% Ag8jtg%% Dw%% Ehg3qzE% EgIrqw%% AwcjsSk% AAMsvDY% HwU3 EQ8utA%% FgYnuTYD AAMsvA%% Bx42uSYOx04% Fg8sqy4D BQUvqCkHy0RC AAUwtQ%% ABgttQ%% EgIn DgUuvCwIxQ%% BQU% AAUw Bw%% FQItqjEHxU8% BA8xrA%% FA8luTcC0Q%% BwQsuQ%% AxMu DwQ2vTcIw15fcDUmVA%% BR8xrCoLx1g% FQ8wriwFxw%% Eg8u Xlpy UV11 UlN77Q%% AxI2 V1x3
The reason of this is the 4MB per-value limit for string attributes (http://sphinxsearch.com/docs/devel.html#conf-sql-attr-string). The reason you see 0.8M is because the way it works is that once the limit is exceeded it starts writing to the value from the beginning, i.e. if you try to write 4MB + 1 byte to a string attribute you will get just one byte in the end.
The provided INSERT command is 4.8M, that's why you get the value of about 0.8M size.
Thanks for pointing this out. We'll improve this behavior in Manticore Search.
When I try calling upickle.write from anywhere in a servlet I get an exception. If for example I do
upickle.write("x")
I get the exception below. Any suggestions?
java.lang.ClassCastException: java.lang.String cannot be cast to scala.scalajs.js.Any
at upickle.json.package$.write(package.scala:38)
at upickle.Types$class.write(Types.scala:127)
at upickle.package$.write(package.scala:10)
at MyServlet$$anonfun$5.apply(MyServlet.scala:157)
at org.scalatra.ScalatraBase$class.org$scalatra$ScalatraBase$$liftAction(ScalatraBase.scala:270)
at org.scalatra.ScalatraBase$$anonfun$invoke$1.apply(ScalatraBase.scala:265)
at org.scalatra.ScalatraBase$$anonfun$invoke$1.apply(ScalatraBase.scala:265)
at org.scalatra.ScalatraBase$class.withRouteMultiParams(ScalatraBase.scala:341)
at org.scalatra.ScalatraServlet.withRouteMultiParams(ScalatraServlet.scala:49)
at org.scalatra.ScalatraBase$class.invoke(ScalatraBase.scala:264)
at org.scalatra.ScalatraServlet.invoke(ScalatraServlet.scala:49)
at org.scalatra.ScalatraBase$$anonfun$runRoutes$1$$anonfun$apply$8.apply(ScalatraBase.scala:240)
at org.scalatra.ScalatraBase$$anonfun$runRoutes$1$$anonfun$apply$8.apply(ScalatraBase.scala:238)
at scala.Option.flatMap(Option.scala:171)
at org.scalatra.ScalatraBase$$anonfun$runRoutes$1.apply(ScalatraBase.scala:238)
at org.scalatra.ScalatraBase$$anonfun$runRoutes$1.apply(ScalatraBase.scala:237)
at scala.collection.immutable.Stream.flatMap(Stream.scala:493)
at org.scalatra.ScalatraBase$class.runRoutes(ScalatraBase.scala:237)
at org.scalatra.ScalatraServlet.runRoutes(ScalatraServlet.scala:49)
at org.scalatra.ScalatraBase$class.runActions$1(ScalatraBase.scala:163)
at org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply$mcV$sp(ScalatraBase.scala:175)
at org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply(ScalatraBase.scala:175)
at org.scalatra.ScalatraBase$$anonfun$executeRoutes$1.apply(ScalatraBase.scala:175)
at org.scalatra.ScalatraBase$class.org$scalatra$ScalatraBase$$cradleHalt(ScalatraBase.scala:193)
at org.scalatra.ScalatraBase$class.executeRoutes(ScalatraBase.scala:175)
at org.scalatra.ScalatraServlet.executeRoutes(ScalatraServlet.scala:49)
at org.scalatra.ScalatraBase$$anonfun$handle$1.apply$mcV$sp(ScalatraBase.scala:113)
at org.scalatra.ScalatraBase$$anonfun$handle$1.apply(ScalatraBase.scala:113)
at org.scalatra.ScalatraBase$$anonfun$handle$1.apply(ScalatraBase.scala:113)
at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)
at org.scalatra.DynamicScope$class.withResponse(DynamicScope.scala:80)
at org.scalatra.ScalatraServlet.withResponse(ScalatraServlet.scala:49)
at org.scalatra.DynamicScope$$anonfun$withRequestResponse$1.apply(DynamicScope.scala:60)
at scala.util.DynamicVariable.withValue(DynamicVariable.scala:58)
at org.scalatra.DynamicScope$class.withRequest(DynamicScope.scala:71)
at org.scalatra.ScalatraServlet.withRequest(ScalatraServlet.scala:49)
at org.scalatra.DynamicScope$class.withRequestResponse(DynamicScope.scala:59)
at org.scalatra.ScalatraServlet.withRequestResponse(ScalatraServlet.scala:49)
at org.scalatra.ScalatraBase$class.handle(ScalatraBase.scala:111)
at org.scalatra.ScalatraServlet.org$scalatra$servlet$ServletBase$$super$handle(ScalatraServlet.scala:49)
at org.scalatra.servlet.ServletBase$class.handle(ServletBase.scala:43)
at MyServlet.org$scalatra$scalate$ScalateSupport$$super$handle(OutrightMarketServlet.scala:146)
at org.scalatra.scalate.ScalateSupport$class.handle(ScalateSupport.scala:130)
at MyServlet.handle(MyServlet.scala:146)
at org.scalatra.ScalatraServlet.service(ScalatraServlet.scala:54)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:848)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:669)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:455)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:137)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:560)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:231)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1072)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:382)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:193)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1006)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:135)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:255)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:116)
at org.eclipse.jetty.server.Server.handle(Server.java:365)
at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:485)
at org.eclipse.jetty.server.AbstractHttpConnection.headerComplete(AbstractHttpConnection.java:926)
at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.headerComplete(AbstractHttpConnection.java:988)
at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:640)
at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
at org.eclipse.jetty.server.AsyncHttpConnection.handle(AsyncHttpConnection.java:82)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint.handle(SelectChannelEndPoint.java:628)
at org.eclipse.jetty.io.nio.SelectChannelEndPoint$1.run(SelectChannelEndPoint.java:52)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:608)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:543)
at java.lang.Thread.run(Thread.java:745)
In my "native" Android app I'm trying to calculate the distance in feet and/or meters (as the crow flies) between two locations on a map. Ideally there would be a method that would take two LatLng values (as that is what I have readily available) as input and return the distance in meters and/or yards. As noted above I'm using Android Maps v2 API.
I've looked at MANY postings (20-30) regarding calculating distances and haven't found any that have helped me resolve my issue. Again this is a native Android application and I'm using Maps v2 API.
Not sure if this is the best approach but I'm currently trying to use the Location method:
distanceBetween(double startLatitude, double startLongitude, double endLatitude, double endLongitude, float[] results)
But unfortunately the app crashes every time because I get a null value for results. I have verified via the debugger that the latitude and longitude dummy values that I'm passing in are valid and that the value of results is null (hence the problem). Here is the LogCat:
04-04 23:48:04.770: D/onMapClick(17970): lat/lng: (32.90843038503306,-117.22537234425546)
04-04 23:48:08.710: D/dalvikvm(17970): threadid=1: still suspended after undo (sc=1 dc=1 s=Y)
04-04 23:48:08.710: D/dalvikvm(17970): GC_FOR_MALLOC freed 7010 objects / 641712 bytes in 121ms
04-04 23:48:24.980: D/AndroidRuntime(17970): Shutting down VM
04-04 23:48:24.980: W/dalvikvm(17970): threadid=1: thread exiting with uncaught exception (group=0x40020950)
04-04 23:48:25.100: E/AndroidRuntime(17970): FATAL EXCEPTION: main
04-04 23:48:25.100: E/AndroidRuntime(17970): java.lang.IllegalArgumentException: results is null or has length < 1
04-04 23:48:25.100: E/AndroidRuntime(17970): at android.location.Location.distanceBetween(Location.java:394)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.example.googleplacesandmaps.PlacesMapActivity$1.onMapClick(PlacesMapActivity.java:259)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.google.android.gms.maps.GoogleMap$6.onMapClick(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.google.android.gms.internal.t$a.onTransact(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at android.os.Binder.transact(Binder.java:249)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.google.android.gms.maps.internal.IOnMapClickListener$Stub$Proxy.onMapClick(IOnMapClickListener.java:93)
04-04 23:48:25.100: E/AndroidRuntime(17970): at maps.i.s.b(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at maps.y.v.c(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at maps.y.bf.onSingleTapConfirmed(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at maps.d.v.onSingleTapConfirmed(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at maps.d.j.handleMessage(Unknown Source)
04-04 23:48:25.100: E/AndroidRuntime(17970): at android.os.Handler.dispatchMessage(Handler.java:99)
04-04 23:48:25.100: E/AndroidRuntime(17970): at android.os.Looper.loop(Looper.java:123)
04-04 23:48:25.100: E/AndroidRuntime(17970): at android.app.ActivityThread.main(ActivityThread.java:4627)
04-04 23:48:25.100: E/AndroidRuntime(17970): at java.lang.reflect.Method.invokeNative(Native Method)
04-04 23:48:25.100: E/AndroidRuntime(17970): at java.lang.reflect.Method.invoke(Method.java:521)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:893)
04-04 23:48:25.100: E/AndroidRuntime(17970): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:651)
04-04 23:48:25.100: E/AndroidRuntime(17970): at dalvik.system.NativeStart.main(Native Method)
Here is the method I'm currently using to try and calculate the distance:
Location.distanceBetween(Double.parseDouble(user_latitude), Double.parseDouble(user_longitude),
fxdLatitude, fxdLongitude, results);
The results was defined as a Class variable: private float[] results = null;
Not sure what i'm doing wrong here.
Again I'd rather have a method that would take two LatLng's as input parameters because they are both readily available...but perhaps more importantly I only have one of the locations available as separate Longitude, Latitude values...the second location is only available as a LatLng value because I get it via onMapClick (when user taps screen). So to use the method distanceBetween I'd need someway to convert this LatLng value into a Latitude/Longitude pair to be able to use it. Anybody know how to do that?
Hopefully there is a simple way of calculating the distances and a simple way to "extract" the latitude/longitude from a LatLng value.
What about making Location object from the two ?
private float distanceBetween(LatLng latLng1, LatLng latLng2) {
Location loc1 = new Location(LocationManager.GPS_PROVIDER);
Location loc2 = new Location(LocationManager.GPS_PROVIDER);
loc1.setLatitude(latLng1.latitude);
loc1.setLongitude(latLng1.longitude);
loc2.setLatitude(latLng2.latitude);
loc2.setLongitude(latLng2.longitude);
return loc1.distanceTo(loc2);
}
You can use following function that accepts two LatLng for calculating distance between them. But before you use this make sure your LatLng variables are not null.
public static double distance(LatLng StartP, LatLng EndP) {
double lat1 = StartP.latitude;
double lat2 = EndP.latitude;
double lon1 = StartP.longitude;
double lon2 = EndP.longitude;
double dLat = Math.toRadians(lat2-lat1);
double dLon = Math.toRadians(lon2-lon1);
double a = Math.sin(dLat/2) * Math.sin(dLat/2) +
Math.cos(Math.toRadians(lat1)) * Math.cos(Math.toRadians(lat2)) *
Math.sin(dLon/2) * Math.sin(dLon/2);
double c = 2 * Math.asin(Math.sqrt(a));
return 6366000 * c;
}
private float[] results = null; is wrong.
You need to use private float[] results = new float[1]; and read the distance with results[0].
In Kotlin, you can:
Define a method to convert LatLng to Location:
fun LatLng.toLocation() = Location(LocationManager.GPS_PROVIDER).also {
it.latitude = latitude
it.longitude = longitude
}
Call it on each LatLng and use Location#distanceTo(...) method:
val distance = coords1.toLocation().distanceTo(coords2.toLocation())
Define an extension method for LatLngBounds:
fun LatLngBounds.computeDistance(): Float {
return northeast.toLocation().distanceTo(southwest.toLocation())
}
Yes, I think MaciejGórski is right.
The computed distance is stored in results[0]. If results has length 2 or greater, the initial bearing is stored in results[1]. If results has length 3 or greater, the final bearing is stored in results[2].