Studio Pro 9.16.1 Native/JDK-11.0.15.1-Make It Native 9 Red Screen of Death on Device/Physical RAM Issues/Can Not Move Make It Native 9 to SD Card

0
Update 2022-08-12 23:17 CDT-Final-End of Topic  Host RAM memory upgraded from 8GB to 16GB (max hardware allows) Performed RAM Optimization per https://www.pandasecurity.com/en/mediacenter/tips/how-to-free-up-ram/ Executed Disk Cleanup Executed Disk Cleanup System Files Executed CCleaner Health Check Executed CCleaner Custom (Deep) Clean Rebooted host Wiped client cache partition via Samsung Galaxy Android Recovery Mode (Storage reveals 64% 82.15 GB used of 128GB leaving ~46GB available ~4X final Heap size calculation) Windows 10 Task Manager Memory Usage shows 16% Load Studio Pro 9.16.1 Load Project (47MB) Windows 10 Task Manager Memory Usage shows 16% suggesting 84% is available for Heap size ~13,312MB (~13GB) Correction: as some time passed Memory Usage increased Correction: Task Manager may include virtual memory to get actual data confirmed via "System Information" showing 12.1GB Available Physical Memory Previously 25,177 minimal/necessary item master rows successfully imported (39% desired 65,536 rows) with 209 columns (mostly null for future useages) Make It Native 9 loaded and executed on client with irregular failures/closures without host/client errors shown using Heap size 4,096MB (4GB) Calculated new Heap size  4GB Heap    25,177 Rows --------    ----------- XGB Heap    65,536 Rows Solving for X suggests new heap size to be 10,752MB (10.5GB) which is less than the above available calculation Regression test changing heap size to: 11,264GB (11GB) for the 65,536 rows  Results: Client load failed AGAIN with Red screen of death -App loading progression time (colored mx mendix page): 36 seconds via time / 15.4MS per Console  -App additional loading (black mx mendix page): 3:07 Minutes  -During load host physical memory available decreased to 2.84GB after "Stop" returned to 12.6GB  (either their is an error in above calculations, misunderstanding Studio Pro 16.1.0 memory usage, or product design error/ommision) ____________________________________________ Client image screen text for others who may be searching forum for their similar issues: Could not invoke FileReaderModule.readAsText < null Failed to allocate a 472996840 byte allocation with 25165824 free bytes and 281MB until OOM, target footprint 267313520, growth limit 536870912 invoke JavaMethodWrapper.java:383 invoke JavaModuleWrapper.java:151 run NativeRunnable.java handleCallback Handler.java:938 dispatchMessage Handler.java:99 dispatchMessage MessageQueueThreadHandler.java:27 loopOnce Looper.java:226 loop Looper.java:313 run MessageQueueThreadImpl.java:226 run Thread.java:920 OOM=Out of Memory ____________________________________________ Readability issue: no commas in string's digits No host console error(s)/information given 3rd party interface changes is concerning if it can cause failure to a production fault tolerant/high availability application To reduce effort: -Perhaps product should examine memory and produce a meaningful error if there is not enough resources available. -Perhaps product should auto adjust heap size based on available resources. -Test Dark Mode with all functions as some appear to not execute until properties are modified Reverted data back to limited/paired/partial via purge (this time chunk purge was not required)/reload Excel xls (xlsx fails) Perform regression testing again Results: Make It Native 9 Load and Execution Successful with performance issue (1:08 minutes for mx mendix black screen to complete) Obervation: Index search of the paired down/partial item master performance appeared excellent Impact: Showcasing Mendix to Global 500 Conglomerates will be degraded Reason: Client will ask to prove searching for a particular semiconductor/electronic component from their catalog that many competitors also carry (i.e. Benchmark Electronics) Effort: 3 days Observation: It appears more and more that Make It Native takes a back seat to Responsive Web for development/testing (IEEE 829-2008) Important: Reboot host daily.  Overnight sleepling seems to cause issues If not done, regularily timeout occurs in log i.e.: com.mendix.systemwideinterfaces.MendixRuntimeException: java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30009/30000 ms     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:23) Caused by: java.io.IOException: java.util.concurrent.TimeoutException: Idle timeout expired: 30009/30000 ms     at org.eclipse.jetty.util.SharedBlockingCallback$Blocker.block(SharedBlockingCallback.java:221)     at org.eclipse.jetty.server.HttpOutput.close(HttpOutput.java:623)     at java.base/sun.nio.cs.StreamEncoder.implClose(StreamEncoder.java:341)     at java.base/sun.nio.cs.StreamEncoder.close(StreamEncoder.java:161)     at java.base/java.io.OutputStreamWriter.close(OutputStreamWriter.java:258)     at com.mendix.util.using.Using$.using(Using.scala:8)     at com.mendix.modules.debugger.internal.DebuggerHandler.doProcessRequest(DebuggerHandler.scala:66)     at com.mendix.external.connector.MxRuntimeConnector.$anonfun$processRequest$1(MxRuntimeConnector.scala:50)     at com.mendix.external.connector.MxRuntimeConnector.$anonfun$processRequest$1$adapted(MxRuntimeConnector.scala:50)     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)     at com.mendix.external.connector.MxRuntimeConnector.processRequest(MxRuntimeConnector.scala:50)     at com.mendix.basis.impl.MxRuntimeImpl.processRequest(MxRuntimeImpl.scala:229)     at com.mendix.m2ee.appcontainer.server.handler.RuntimeServlet.service(RuntimeServlet.scala:32)     at javax.servlet.http.HttpServlet.service(HttpServlet.java:750)     at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:764)     at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1665)     at org.eclipse.jetty.websocket.servlet.WebSocketUpgradeFilter.doFilter(WebSocketUpgradeFilter.java:170)     at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:202)     at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1635)     at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:527)     at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)     at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1571)     at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:221)     at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1378)     at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:176)     at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:484)     at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1544)     at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:174)     at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1300)     at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:129)     at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:122)     at org.eclipse.jetty.server.Server.handle(Server.java:562)     at org.eclipse.jetty.server.HttpChannel.lambda$handle$0(HttpChannel.java:505)     at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:762)     at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:497)     at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:282)     at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:319)     at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:100)     at org.eclipse.jetty.io.SelectableChannelEndPoint$1.run(SelectableChannelEndPoint.java:53)     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.runTask(AdaptiveExecutionStrategy.java:412)     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.consumeTask(AdaptiveExecutionStrategy.java:381)     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.tryProduce(AdaptiveExecutionStrategy.java:268)     at org.eclipse.jetty.util.thread.strategy.AdaptiveExecutionStrategy.lambda$new$0(AdaptiveExecutionStrategy.java:138)     at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:407)     at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:894)     at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1038)     at java.base/java.lang.Thread.run(Thread.java:834) Caused by: java.util.concurrent.TimeoutException: Idle timeout expired: 30009/30000 ms     at org.eclipse.jetty.io.IdleTimeout.checkIdleTimeout(IdleTimeout.java:166)     at org.eclipse.jetty.io.IdleTimeout.idleCheck(IdleTimeout.java:108)     at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)     at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)     at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)     at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)     at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)     at java.base/java.lang.Thread.run(Thread.java:834) Proof of Concept seems to be 99% completed with the exceptions of smaller device screen testing (have noticed initial issues), iOS testing, and implementing interface to monetize app to recoup Mendix and API usages costs (currently Google issues most like will change vendors) not withstanding oversights  Effort to date: multiple years, plus 1 year evaluating Gartner Magic Quadrant list of products Continuing expansion of remaining app functions based on currently implemented functions -Native Android and iOS mobile device application creation -Responsive Web application creation -Modules: Atlas Core, Community Commons, Database Replication, Email Template, Excel Importer, Mx Model Reflections, Nanoflow Commons, Native Mobile Resources, XLS Report/Export -Relational Database for CRUD available to  *IBM DB2 (personally preferred) *Microsoft SQL Server (SAP preferred) *MySQL/MariaDB *Oracle Database *PostgreSQL  -Commitment Control/Host Client Synchronization -SDLC/Change Management Procedures -Data type conversions and manipulations  -Database/Logic Security for Admin, Customers, Vendors -Visual Logic/Internal Process Documentation -Soft Coding Logic avoiding Hard Coding Constraints -Import Mappings -Json Structures -Java Script Actions -Server Microflows -Client Nanoflows -Native Andoid/iOS Device and Web Responsive Pages -Various Widgets -Custom Login to include: *Data Privacy Laws/SOX (Sarbanes-Oxley Act) Encryption *PCI DSS Compliant User Authentication Rest API Service *Legal Agreement Acknowledgment *Email Authentication via Randomized Code Creation *User Disablement upon Multiple Authentications Failures *User Disablement upon Device Change *Password Reset *User Login/Logout/Inactivity Auditing for User Security  (Device/Location Timestamping via Rest API Services) *Timed Inactivity Audited Logout for User Safety -Animation showcasing application/required actions  -Video Player for Pond5 Audio Affects -Maps -Location/Geo-coding Storing/Calculations -Static/Dynamic Shutterstock Marketing Image Collections -Device image collection (has had limitations) -Meaningful user error messages/logging -Scheduled Events/Batch Processing -etc. Not including many functions available  i.e. Device Notifications, Feedback, Signature, Biometrics, Bar Coding, etc. Very humble Thank You to those who gave of themselves to get things to this point. There are many days wondering "How soon before being 3 steps from being homeless?" because of those who would do whatever it takes to get ahead (the reason why lifegaurd reach, throw, row, go training exists) and industry changes in the #2 ERP system (managed services, code current, cloud) Often look to the sky and shout "If you got something you want me to do, get busy. Tick-Tok my time is running out. If you can help one, you help hundreds, that can help thousands, that can help millions. Even if 99.9% of the time it seems actions didn't make a difference. Have never believed in knowing when a difference is made but in the last month 2 strangers said this, "Do you know what you said to me changed my life for the better?" Hard to handle hearing that but gives strength to not give up trying to make a difference. The last time that was heard and believed was 30 years ago. Believe even if you don't see or hear it that you probably did make a difference and just didn't get to know it. Regards, Bradley M. Bloyer  Rosewater Development LLC Member Future Farmers of America Member Former Eagle Scout-Councel Camp Lifeguard/Archery Instructor/Advisor/Historian Order of The Arrow Vigil Member (Brotherhood of Cheerful Service) Franternal Order of the Eagles Member (People Helping People) "Do one good kind thing for another every day." (Try to while humanly not being perfect) ***End of Post*** ------------------------------------------------------ 2022-08-12 21:13 CDT Update Upgraded host from 8GB to 16GB Effort: 3 Days/$65 USD Make It Native 9: Continues to fail/crash on initial load regularily Continues to fail/crash randomly after load No Host or Client errors shown to deduce problem   1960's Wringer Washer  https://www.youtube.com/watch?v=JDQniU76scg _________________________ Update 2022-08-11 09:54 CDT Make It Native 9 App fails/crashes at irregular time frames before and after load and initial page is displayed and a initial page button is clicked. (no errors/logs) Effort for proof: 4 hours ---------------------- Update 2022-08-10 13:00 CDT Database Search Stress Test List View using Nanoflow XPath Constraint for 18,951 Rows Fails when Page size=100 (app crashes/closes on mobile device without console/client information) List View successfull when Page size=10 (performance appears to be acceptable) XPATH Search Criteria: [Stock Type ='S' and (  contains(Item Description 1,SearchString1) or contains(Item Description 2,SearchString1) ) ] Effort: ½ day Additional: Ordered 16 MB Memory to expand Heap Size to not fail for paired down data import ($60USD) Update 2022-08-09 13:39 CDT *****?Resolved?***** -Studio Pro Server Settings changed Heap Size from 64MB to 4,096MB (4GB max allowed out of 8GB on Host) -Excel XLS import max allowed: 18,500 Rows Do not like: -Heap size does not auto adjust -Host/Client Make It Native is dependent on available host RAM (unacceptable rather Java would use disk)  (to load desired data would require a Windows Server with 512+GB RAM) Guess I'll have to buy more RAM for host for which max allowed is 16GB -Having to reassociate import file with template every time number of records change  (If you don't, it appears as if it loads the previous file-proved by record count tests, not a file lock issue *BUG*) Effort to try hundreds of combinations of Max Heap Size and Max Number of XLS Import Rows: 2+ Painful Days Did not find any documentation that discusses this. ------------------------------------------- 2022-08-07 22:46 CDT Update No dice-tried every possible combination of heap size in Studio Pro for 8 GB Ram, over available, % available, etc. etc. Back to failing quickly, I think the long load attempts were flukes/failures with no errors after reboots of host/client device. Even when changing the heap size the red screen of death produces the same number (allocation, free, until OOM, target footprint, growth limit) Do I waste money on more memory if the host system can handle it? ------------------------------- 2022-08-07 18:34 CDT Update Googled all day and finnaly found: https://forum.mendix.com/link/questions/107779 Mendix App Settings Edit Configuration Change Maximum Java heap from 64 to 2048 Still haven't been able to load native client, but it is taking longer which indicates the memory issue is on the Host. Hopfully I'm getting closer to solving. For the newbies:OOM=Out of Memory ---------------------------------------- 2022-08-07 02:41 CST Update Paired xls import MUST HAVE data (3 days to do) down to ~25000 rows/209 columns (mostly null) 4.43MB xls / 8.38MB as CSV Now Device has the red screen of death (seen this happen before) available RAM 4 of 8 GB-Samsung Ramplus limit.   No console errors. Google-No Hits "Could not Invoke FileReaderModule.readAsText" "null" "failed to allocate a" "free bytes and" "MB until OOM, target footprint" "growth limit" Only Result: https://github.com/cds-snc/covid-alert-app/issues/1181 snippet of related logs: 2020-07-07 14:13:08.230 26688-26946/app.covidshield W/app.covidshiel: Throwing OutOfMemoryError "Failed to allocate a 200000012 byte allocation with 25165824 free bytes and 155MB until OOM, max allowed footprint 130630480, growth limit 268435456" (VmSize 4233836 kB) First memory mssues on Host, now it appears to be a memory issue on device (4.6 GB memory available/46GB sdcard available). Why?  The loading of the app on the device should not be loading the database. Also, can not move Make It Native 9 to SD card to attempt a work around. Screen Capture Attached ----------------------------------- 2020-08-05 14:52 CST Update: Able to view all rows in a Responsive Data Grid, so it is confusing why Make It Native will not load on black logo screen after 2 minute wait.  Make It Native closes on device and no errors are given on device or host.  Additional Note: Responsive Purge now works without having to purge in multiple chunks.  After purge app then will load, so there is still questionability about how much data the device can handle.  (There is 100 rows remaining after purge that have no problem being viewed on device) --------------------------------- 2020-08-04 23:29 CST Update Paired down data drastically ~50% Console Logs Statistics   -   FINAL statistics, Objects of type 'Customer.ItemMaster'      Created: 46889 Rows (209 Columns most of which are null) 8.26 MB xls (don't use xlsx)     Synchronized: 0      Not found: 0      Skipped: 0  Successfully finished importing 43 - ItemMaster in 72369 ms Run View App On Device Console Log: Downloading objects completed in 22.5 milliseconds. Host Reboot Required again after 24 hours as usual to fix timeout issues. Rerun Downloading objects completed in 19.1 milliseconds. Now app refuses to load on device on MX mendix black screen after ~ 2 minutes, returns to device home page, with NO console information-this is worse than when trying to load 2X data that did give vague console errors after 30+ minutes and Host  Memory/CPU maxing out-little disk activity. (After clearing Android Make It Native Data/Cache and rebooting device) What now? Note to Ivo: There is no issue importing Excel data, just getting the app to load after import. ----------------------------------   08/04/2022 01:52 CST Update  “Appears found a way to purge 85K+ rows with 213 columns mostly null” (for the next poor sap-and don’t mean the SAP ERP)  It “appears”  (and maybe that is not correct) the solution is what one would call “chunk it”. Microflow/No Sync Select Portions of Data for Delete i.e. Stock Type=”S”tock and (OR Description 1 contains 0-9, A-J, etc) and finally just Stock Type “S”tock to ensure cleanup. It “appears” (any maybe this is not correct) that large data I/O/Memory is not being handled appropriately. But it is now possible to load the app without it failing with memory issues of handling too much data which should be stored on a Mendix server, not the Studio Pro host. If you can import X amount of data, then you should be able to purge X amount of data. This was to be a stress test to see how long it would take to search a key, but ended up being Make It Native Load failures. Data will unfortunately have to be paired down to a point where Make It Native will load so as to test the search of an index-this will take days to determine what to keep and what to remove for the inport.  I really do hope this helps another as so many have been kind to help me. (most likely no one will attempt these extremes but should be considered by further development of the product and reliance on 3rd parties.)  It’s not call stress testing for nothing.  All comments are appreciated whether positive or negative.  Just trying to do my part on this little green ball, like the few others that do.   Saved, Commited again (as it did not seem possible to rollback to previous commits before code fixes AND/OR before data import.) Peace ----------------------- 08/04/2022 01:02 CST Update So I was finally able to upload a large item master, and then the app will not load into Make It Native due to memory issues.  Now I cannot purge the uploaded data to scale down the import via Responsive Nano or Micro flows (4 days attempting to resolve). If you can upload you should be able to purge without issue.  In 9.15.0 was receiving some weird message about null relative to memory, restored version/data state from commit after upload incase of corrupt data, upgraded to 9.16.0 that mentions memory improvements but did not solve this problem. Task Manager shows Studio Pro sucking the life out of the system.  Why is the data not stored on a cloud server vs the Studio Pro System?  No Mendix or Google documentation provides any clues to fix. The heap message is talked about but does not say how to resolve the issue.  Note: Out of the 85K rows and 200+columns, most of the columns are empty/null for future use.  Console Logs: Error in execution of monitored action 'RegularClientAction' (execution id: 1659525599199-10, execution type: CLIENT) java.lang.OutOfMemoryError: Java heap space     at com.mendix.basis.objectmanagement.MendixObjectMemberImpl.clone(MendixObjectMemberImpl.java:381)     at com.mendix.basis.objectmanagement.MendixObjectMemberImpl.clone(MendixObjectMemberImpl.java:20)     at com.mendix.basis.objectmanagement.MendixObjectImpl.<init>(MendixObjectImpl.java:112)     at com.mendix.basis.objectmanagement.MendixObjectImpl.clone(MendixObjectImpl.java:577)     at com.mendix.basis.component.OriginalMapper.$anonfun$new$1(OriginalMapper.scala:15)     at com.mendix.basis.component.OriginalMapper$$Lambda$2165/0x0000000800d3f040.apply(Unknown Source)     at scala.collection.immutable.List.foreach(List.scala:333)     at com.mendix.basis.component.OriginalMapper.<init>(OriginalMapper.scala:15)     at com.mendix.basis.action.user.DeleteAction.executeAction(DeleteAction.scala:79)     at com.mendix.basis.action.user.DeleteAction.executeAction(DeleteAction.scala:34)     at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:58)     at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71)     at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:48)     at com.mendix.core.actionmanagement.internal.InternalCoreAction.call(InternalCoreAction.java:56)     at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeSync$2(ActionManager.scala:106)     at com.mendix.basis.actionmanagement.ActionManager$$Lambda$1724/0x0000000800b8a840.call(Unknown Source)     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)     at com.mendix.basis.actionmanagement.ActionManager.executeSync(ActionManager.scala:105)     at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeInTransactionSync$1(ActionManager.scala:117)     at com.mendix.basis.actionmanagement.ActionManager$$Lambda$2175/0x0000000800d44840.apply(Unknown Source)     at scala.util.Try$.apply(Try.scala:210)     at com.mendix.basis.actionmanagement.ActionManager.executeInTransactionSync(ActionManager.scala:117)     at com.mendix.basis.component.ObjectManagementCore.$anonfun$deleteVarargs$3(ObjectManagementCore.scala:56)     at com.mendix.basis.component.ObjectManagementCore.$anonfun$deleteVarargs$3$adapted(ObjectManagementCore.scala:55)     at com.mendix.basis.component.ObjectManagementCore$$Lambda$2412/0x0000000800e17840.apply(Unknown Source)     at scala.collection.LinearSeqOps.foldLeft(LinearSeq.scala:169)     at scala.collection.LinearSeqOps.foldLeft$(LinearSeq.scala:165)     at scala.collection.immutable.List.foldLeft(List.scala:79)     at com.mendix.basis.component.ObjectManagementCore.deleteVarargs(ObjectManagementCore.scala:55)     at com.mendix.basis.component.ObjectManagementCore.deleteVarargs$(ObjectManagementCore.scala:48)     at com.mendix.basis.component.InternalCore.deleteVarargs(InternalCore.scala:24)     at com.mendix.basis.component.InternalCoreVarargs.delete(InternalCoreVarargs.java:22)   An unhandled error occurred in the MxRuntime. -------- java.lang.OutOfMemoryError: Java heap space     at com.mendix.basis.objectmanagement.MendixObjectMemberImpl.clone(MendixObjectMemberImpl.java:381)     at com.mendix.basis.objectmanagement.MendixObjectMemberImpl.clone(MendixObjectMemberImpl.java:20)     at com.mendix.basis.objectmanagement.MendixObjectImpl.<init>(MendixObjectImpl.java:112)     at com.mendix.basis.objectmanagement.MendixObjectImpl.clone(MendixObjectImpl.java:577)     at com.mendix.basis.component.OriginalMapper.$anonfun$new$1(OriginalMapper.scala:15)     at com.mendix.basis.component.OriginalMapper$$Lambda$2165/0x0000000800d3f040.apply(Unknown Source)     at scala.collection.immutable.List.foreach(List.scala:333)     at com.mendix.basis.component.OriginalMapper.<init>(OriginalMapper.scala:15)     at com.mendix.basis.action.user.DeleteAction.executeAction(DeleteAction.scala:79)     at com.mendix.basis.action.user.DeleteAction.executeAction(DeleteAction.scala:34)     at com.mendix.systemwideinterfaces.core.UserAction.execute(UserAction.java:58)     at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.doCall(CoreActionHandlerImpl.scala:71)     at com.mendix.basis.actionmanagement.CoreActionHandlerImpl.call(CoreActionHandlerImpl.scala:48)     at com.mendix.core.actionmanagement.internal.InternalCoreAction.call(InternalCoreAction.java:56)     at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeSync$2(ActionManager.scala:106)     at com.mendix.basis.actionmanagement.ActionManager$$Lambda$1724/0x0000000800b8a840.call(Unknown Source)     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)     at com.mendix.basis.actionmanagement.ActionManager.executeSync(ActionManager.scala:105)     at com.mendix.basis.actionmanagement.ActionManager.$anonfun$executeInTransactionSync$1(ActionManager.scala:117)     at com.mendix.basis.actionmanagement.ActionManager$$Lambda$2175/0x0000000800d44840.apply(Unknown Source)     at scala.util.Try$.apply(Try.scala:210)     at com.mendix.basis.actionmanagement.ActionManager.executeInTransactionSync(ActionManager.scala:117)     at com.mendix.basis.component.ObjectManagementCore.$anonfun$deleteVarargs$3(ObjectManagementCore.scala:56)     at com.mendix.basis.component.ObjectManagementCore.$anonfun$deleteVarargs$3$adapted(ObjectManagementCore.scala:55)     at com.mendix.basis.component.ObjectManagementCore$$Lambda$2412/0x0000000800e17840.apply(Unknown Source)     at scala.collection.LinearSeqOps.foldLeft(LinearSeq.scala:169)     at scala.collection.LinearSeqOps.foldLeft$(LinearSeq.scala:165)     at scala.collection.immutable.List.foldLeft(List.scala:79)     at com.mendix.basis.component.ObjectManagementCore.deleteVarargs(ObjectManagementCore.scala:55)     at com.mendix.basis.component.ObjectManagementCore.deleteVarargs$(ObjectManagementCore.scala:48)     at com.mendix.basis.component.InternalCore.deleteVarargs(InternalCore.scala:24)     at com.mendix.basis.component.InternalCoreVarargs.delete(InternalCoreVarargs.java:22)   An error occurred while executing an action of MxModelReflection.TopBar.menuBar1: Expected response body to be JSON. Instead received: "" Error: An error occurred while executing an action of MxModelReflection.TopBar.menuBar1: Expected response body to be JSON. Instead received: ""     at http://localhost:8080/mxclientsystem/mxui/mxui.js?637951028501364917:68:143589     at we (http://localhost:8080/mxclientsystem/mxui/mxui.js?637951028501364917:24:6501)     at i (http://localhost:8080/mxclientsystem/mxui/mxui.js?637951028501364917:24:6402)     at x (http://localhost:8080/mxclientsystem/mxui/mxui.js?637951028501364917:66:5472)   ----------------------------------------- 07/30/2022 00:27 CST Problem Resolution Attempt Failure: Executed Windows 10 Disk Cleanup of all categories and use Advanced to remove prior restore points Executed CCleaner Health Check and Custom Clean selecting all items not necessary for standard system operation Rebooted to re-examine available disk space/direct-access storage device (DASD) In Windows 10 Increased Virtual/Disk/Paging Memory via Control Panel/Settings/System Properties/Advanced/Virtual Memory/Custom Size/Initial/Maximum size: 20,000 MB/OK/Rebooted Control Alt Delete Task Manager Processes Sort Memory Decending On Android Device clean storage via system and CCleaner and increase Ram Plus from 4GB to 8GB via System Settings then Reboot Device Load Studio Pro Execute Run Locally BEFORE executing Made For Native 9 notice task manager memory on laptop usage slowly and steadily increase (in this test case to 2,041 MB / 47%) Execute Studio Pro/View App/View on Device/Make It Native Log States:Downloading objects completed in 31.2 milliseconds. Yellow app load status bar happens in a normal time frame (note always longer than the time frame in the line above) After, device remains on black mx mendix screen for x as laptop memory continues to grow to 4,000 MB and CPU is maxed out at 100% after 5 minutes CPU 100%/Memory 3,951MB 62%/Disk <.3MB/s-3%/Network 0%/Power usage:Very High/ Power usage trend:High-Very High  Memory now 3,962 MB/61% Keeping device screen timeout alive via changing position from vertical to horizontal back to vertical 15 minutes passed during load but the good news is the console hasn't errored out yet Note: Item master only takes a minute or two to load the item master with 86,000 rows and 123 columns into Excel (as xls format) ~11.5 MB 20 minutes from initial load device displays "Your changes cannot be syncronized at this moment. They will be synchronized later. RESTART APP/CLOSE APP At which moment? At which later?  Console claims out of memory again.  Where?  Laptop/Studio Pro?  Device? #1 Error in execution of monitored action 'RegularClientAction' (execution id: 850cba0c-a504-4935-8320-507db1cc9a7a, execution type: CLIENT) java.lang.OutOfMemoryError: Java heap space     at java.base/java.util.HashMap.resize(HashMap.java:699)     at java.base/java.util.HashMap.putVal(HashMap.java:658)     at java.base/java.util.HashMap.put(HashMap.java:607)     at com.mendix.basis.objectmanagement.MendixObjectImpl.getMembers(MendixObjectImpl.java:139)     at com.mendix.webui.requesthandling.HashUtilImpl$.calculateHash(HashUtilImpl.scala:19)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:33)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:22)     at com.mendix.webui.jsonserialization.OutgoingState$.$anonfun$getResponse$1(OutgoingState.scala:28)     at com.mendix.webui.jsonserialization.OutgoingState$$$Lambda$3454/0x0000000801202040.apply(Unknown Source)     at scala.collection.immutable.List.map(List.scala:250)     at scala.collection.immutable.List.map(List.scala:79)     at com.mendix.webui.jsonserialization.OutgoingState$.getResponse(OutgoingState.scala:28)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:62)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:46)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$3(RegularClientAction.scala:120)     at com.mendix.webui.actions.client.RegularClientAction$$Lambda$3525/0x0000000801239840.apply(Unknown Source)     at scala.util.Try$.apply(Try.scala:210)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2(RegularClientAction.scala:120)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2$adapted(RegularClientAction.scala:118)     at com.mendix.webui.actions.client.RegularClientAction$$Lambda$3523/0x0000000801238840.apply(Unknown Source)     at com.mendix.webui.requesthandling.helpers.ContextHandling.$anonfun$inContext$5(ContextHandling.scala:57)     at com.mendix.webui.requesthandling.helpers.ContextHandling$$Lambda$3332/0x0000000801191440.apply$mcV$sp(Unknown Source)     at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)     at com.mendix.basis.actionmanagement.ActionMonitoring$.$anonfun$monitor$1(ActionMonitoring.scala:49)     at com.mendix.basis.actionmanagement.ActionMonitoring$$$Lambda$1695/0x0000000800b69c40.call(Unknown Source)     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)     at com.mendix.basis.actionmanagement.ActionMonitoring$.monitor(ActionMonitoring.scala:49)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:57)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:31)     at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:94)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:28)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:20) #2 An unhandled error occurred in the MxRuntime. java.lang.OutOfMemoryError: Java heap space  (there's a word needing expansion-heaping helping of ..... come on, insert your own word and have a laugh.  By now everyone probably gave up and stoped reading)     at java.base/java.util.HashMap.resize(HashMap.java:699)     at java.base/java.util.HashMap.putVal(HashMap.java:658)     at java.base/java.util.HashMap.put(HashMap.java:607)     at com.mendix.basis.objectmanagement.MendixObjectImpl.getMembers(MendixObjectImpl.java:139)     at com.mendix.webui.requesthandling.HashUtilImpl$.calculateHash(HashUtilImpl.scala:19)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:33)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:22)     at com.mendix.webui.jsonserialization.OutgoingState$.$anonfun$getResponse$1(OutgoingState.scala:28)     at com.mendix.webui.jsonserialization.OutgoingState$$$Lambda$3454/0x0000000801202040.apply(Unknown Source)     at scala.collection.immutable.List.map(List.scala:250)     at scala.collection.immutable.List.map(List.scala:79)     at com.mendix.webui.jsonserialization.OutgoingState$.getResponse(OutgoingState.scala:28)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:62)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:46)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$3(RegularClientAction.scala:120)     at com.mendix.webui.actions.client.RegularClientAction$$Lambda$3525/0x0000000801239840.apply(Unknown Source)     at scala.util.Try$.apply(Try.scala:210)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2(RegularClientAction.scala:120)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2$adapted(RegularClientAction.scala:118)     at com.mendix.webui.actions.client.RegularClientAction$$Lambda$3523/0x0000000801238840.apply(Unknown Source)     at com.mendix.webui.requesthandling.helpers.ContextHandling.$anonfun$inContext$5(ContextHandling.scala:57)     at com.mendix.webui.requesthandling.helpers.ContextHandling$$Lambda$3332/0x0000000801191440.apply$mcV$sp(Unknown Source)     at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.scala:18)     at com.mendix.basis.actionmanagement.ActionMonitoring$.$anonfun$monitor$1(ActionMonitoring.scala:49)     at com.mendix.basis.actionmanagement.ActionMonitoring$$$Lambda$1695/0x0000000800b69c40.call(Unknown Source)     at com.mendix.util.classloading.Runner$.withContextClassLoader(Runner.scala:20)     at com.mendix.basis.actionmanagement.ActionMonitoring$.monitor(ActionMonitoring.scala:49)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:57)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:31)     at com.mendix.webui.actions.client.RegularClientAction.inContext(RegularClientAction.scala:94)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext(ContextHandling.scala:28)     at com.mendix.webui.requesthandling.helpers.ContextHandling.inContext$(ContextHandling.scala:20) #3 JSON Parse error: Unexpected EOF parse@[native code] f@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:117:155 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:117:864 k@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:536 x@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:934 callImmediates@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:3023 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:2847 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:1023 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:2539 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:993 value@[native code] value@[native code] #4 Could temporarily not synchronize data. Please try again later.   *****Like when, how much later, will that actually make a difference to retry later? Doubt it.***** construct@[native code] p@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:37:352 s@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:35:363 construct@[native code] http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:7:3299 n@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:7:4849 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:7:78920 y@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:12:587 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:12:1892 y@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:12:587 o@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:12:1068 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:12:1240 f@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:117:155 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:117:864 k@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:536 x@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:934 callImmediates@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:122:3023 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:2847 http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:1023 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:2539 value@http://192.168.0.143:8083/index.bundle?platform=android&dev=false&minify=true&app=com.mendix.developerapp.mx9&modulesOnly=false&runModule=true:61:993 value@[native code] value@[native code] Caused by System Maintenance Issue?  No Proof from: Status.Mendix.Com (Thank You to a good guy that introduced that page) Mendix Platform Status-All Systems Operational Ending laptop memory usage at this point is not 3,551 MB (virtual memory increase to 20,000 MB did not resolve issue) Ending device memory usage at this point is now 3.4 GB available, 3.8 GB/8.0 GB Used, Reserved:730 MB Make It Native 9 186 MB Double checking device app App info for Make It Native 9 1.2.11.142: Mobile Data 53MB, Storage 307 MB used in internal storage, Memory 63 MB used on average in the last 3 hours  (App 143 MB / Data 121 MB / Cache 43 MB / Total 307 MB Where and What is the database problem? Why are console errors not more direct giving simple problem/cause/recovery/solution text? i.e. IBM i CPF4131 summary "record format level check."  Detail "The record format in the file you are opening does not have the same format level ID that was found when the program was compiled.  There is something different in the layout of the fields in the record."  See dspjoblog for more detailed information. Looking like days will need to be spent pairing down the item master import data because there is no category/sales volume information available for the most popular items to showcase the app to Fortune 500 executives. Hopefully the purge process for stock vs non stock items doesn't fail which will have to be executed through a responsive navigation page and not from an existing native mobile page when app cannot be loaded   And seriously I am trying to help improve the product, too much time has been invested to swap products or do what someone suggested a few years ago from someone who decided to stop banging their head against the wall.  A piece of history: In 1990 IBM released the classified Silver Lake Project.  They did not charge for maintenance/support/etc. in order to improve the product and shake the bugs out until it was rock solid, THEN they charged licensing by xyz methods, tiered support levels, etc.  To date it became IBM’s best midrange product to replace mainframes they ever made.  btw, nice to see someone finally fixed the Studio Version list sort…….I wonder how that came to be? ;) ------------------------------------------ Status of Current/Latest Mendix Excel Import/Export Modules as of 07/27/2022 19:13 CDT I know there has been rant, but will do the best to share to hopefully cancel out feelings. This is for the next poor sap so hopefully they don't spend weeks banging their head against a wall before passing out from exhaustion. (insert laughter) After trying ~one hundred Forum and/or other Google 3rd Party Result Suggestions (no joke) for countless different Ambiguous Console Errors, 87,000 Rows with 213 Columns Successfully finally Uploaded via latest version of Mendix Excel Importer.  (according to log but unproven because "Make It Native" will now not finish loading now) (Attempted to determine if issue was jar duplicates/versions, Anonymous vs Admin Security, "Factory" column that does not exist, Date Parsing of Value that is not a Date but is String, etc. etc., and the list goes on and on and on) My solution (which may not work for everyone). -Replace old module versions with current (since some suggested version back peddling)  One posting somewhere suggested that this process does not work with .xlsX BUT DOES work with .xls (legacy Excel version) -Resaved Excel Data in .XLS format (even when module parameters offer current versions) -Created Template in Mendix Responsive from the older Excel format  (Previously Created with Template Header Row via Transposing Design Column List-INSTEAD OF CREATING FROM MENDIX ENTITY) -Execute "Match/Connect" function    (Note: Since "Make It Native" will not complete loading 'Actual' Date formatting cannot be verified) -Mendix Excel Export continues to fail -Make It Native will not complete loading before device screen times out and/or 30 minutes forced logoff timer executes  (Program Loads with yellow status bar but next black screen does not complete,   it is surmised "Make It Native" is trying to put the uploaded data in the device vs. being stored on a server) -Conclusion: Database Stress Test Failed Suggestions on dealing with "Make It Native" load would be greatly appreciated as this is the new road block Thank You to those that have posted in the last 30 days making multiple suggestions that in some crazy cosmic reason got me one step closer to proof of concepts after 3 years, which includes a year of evaluating the competitors: Amazon, Appian, Betty Blocks, Google, IBM (rebrands/sunk prototypes/peddling 3rd party vaporware/finally gave up), Microsoft, Oracle, Outsystems, Salesforce, and the list goes on. Mendix is SO CLOSE to making it legit but needs tighter constraints on unit/component/system/user Testing/Acceptance. It is kind of like in 1994 when J.D. Edwards World version A7.3.1 was (insert word) until enough customers complained and got the act together to release version A7.3.3-rock solid.   Also like the J.D. Edwards transportation module that is still a hot mess 10 years later because it was not developed at HQ and farmed out to Kanata. I truly hope the solution I found to complete the import will help at least one other person. I wish I would have kept every error encountered but did not as believing this was not going to be an ordeal. Peace, Brad I only have one goal, to complete proof of concept so I can sell a Fortune 500 Native Mobile app to be a philanthropist. (Including to Mendix to showcase its power and potential) To have the resources to Water, Feed, and Shelter those truly in need. That is why you may see frustration when ~5 simple functions should have been achieved in months not years, with what is the closest technology to changing so much but has to enroll the veterans  instead of greenhorns with no industry standards structure to development, testing, and determining when general availability (GA) should occur. If I ever do pull this off I’m going to go look for Tim in the Netherlands as he has been so helpful and put up with (insert words).  Would hire him in a heartbeat and pay him EXTREMELY well, along with a few others. Does anyone know when this was published, it just appeared on a right sidebar.  Unsure if it would have resolved all related issues. https://academy.mendix.com/link/paths/44/Importing-and-Exporting-Your-Data   Update: 07/28/2022 12:14 CST/ 7:16 PM Thursday, July 28, 2022 (GMT+2) Netherlands Finally was able to obtain a log.  Device has huge amount of memory and storage.  Again, data should be on the server not on the device: Error in execution of monitored action 'RegularClientAction' (execution id: 05da7c5c-db61-4012-93a0-270955146630, execution type: CLIENT) java.lang.OutOfMemoryError: Java heap space     at scala.collection.immutable.TreeMap$.from(TreeMap.scala:314)     at scala.collection.immutable.TreeMap$.from(TreeMap.scala:298)     at scala.collection.SortedMapFactory.apply(Factory.scala:742)     at scala.collection.SortedMapFactory.apply$(Factory.scala:742)     at scala.collection.immutable.TreeMap$.apply(TreeMap.scala:298)     at spray.json.JsObject$.apply(JsValue.scala:58)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convertMemberValue(MendixObjectConverter.scala:82)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.$anonfun$convert$1(MendixObjectConverter.scala:34)     at com.mendix.webui.jsonserialization.MendixObjectConverter$$$Lambda$3327/0x0000000801187040.apply(Unknown Source)     at scala.collection.MapView$MapValues.$anonfun$iterator$1(MapView.scala:119)     at scala.collection.MapView$MapValues$$Lambda$306/0x00000008003ee840.apply(Unknown Source)     at scala.collection.Iterator$$anon$9.next(Iterator.scala:577)     at scala.collection.mutable.Growable.addAll(Growable.scala:62)     at scala.collection.mutable.Growable.addAll$(Growable.scala:57)     at scala.collection.immutable.MapBuilderImpl.addAll(Map.scala:692)     at scala.collection.immutable.Map$.from(Map.scala:643)     at scala.collection.IterableOnceOps.toMap(IterableOnce.scala:1256)     at scala.collection.IterableOnceOps.toMap$(IterableOnce.scala:1255)     at scala.collection.AbstractIterable.toMap(Iterable.scala:926)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:34)     at com.mendix.webui.jsonserialization.MendixObjectConverter$.convert(MendixObjectConverter.scala:22)     at com.mendix.webui.jsonserialization.OutgoingState$.$anonfun$getResponse$1(OutgoingState.scala:28)     at com.mendix.webui.jsonserialization.OutgoingState$$$Lambda$3401/0x00000008011cb840.apply(Unknown Source)     at scala.collection.immutable.List.map(List.scala:250)     at scala.collection.immutable.List.map(List.scala:79)     at com.mendix.webui.jsonserialization.OutgoingState$.getResponse(OutgoingState.scala:28)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:62)     at com.mendix.webui.actions.client.RegularClientAction$Helpers$StateHandler.apply(RegularClientAction.scala:46)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$3(RegularClientAction.scala:120)     at com.mendix.webui.actions.client.RegularClientAction$$Lambda$3472/0x0000000801203040.apply(Unknown Source)     at scala.util.Try$.apply(Try.scala:210)     at com.mendix.webui.actions.client.RegularClientAction.$anonfun$execute$2(RegularClientAction.scala:120)   ----------------------------------------------------------------------------------------------------------------- Original Information: Mendix Studio Pro 9.15.0 (Native/Responsive)-Finding a Simplified Data Export/Import (CSV/Excel/etc) Related:  https://forum.mendix.com/link/questions/115898 I've tried every relative module under the sun and they are all so convoluted to use. Functional Specifications: -Create Table with 100+ columns -Write one row to table -Press ONE button to export table data to CSV/XLSX with schema header, etc. -Use exported format to paste in new column data -Press ONE button to import table data from CSV/XLSX with schema header, etc.
asked
2 answers
3

Your use case is not a typical use case for implementing a Mendix Excel interface. Mendix has built solutions for normal functional use cases where clients have some 10-40 columns for the Excel file and these need formatting. For a functional interface, it is very important to map the data types from Mendix to/from Excel, hence the XLSExport module. Data models and data types need to agree for a well functioning interface. This is a challenge for any IT system, not only Mendix. I have seen this challenge in many other use cases before my Mendix career. It is definitely not a ‘Mendix thing’ like you are attempting to label it.

 

It seems you want to use the Export/Import functionality for a pure technical test. Is your scenario really what an end user will do? If so, you need to configure mapping either way. However if you really want to use Excel import and export as a stress test, not my advice, if you really want this to be manageable by Mendix, no column formatting, some simple Java code with the Apache POI library can do the trick. You then need to create a ‘dumb’ data model, all attributes strings and large field length, to be sure all data can go in and out without the need of attribute level validation which is typically needed when using it for functional uses cases.
 

Conclusion; My feeling is you shouldn’t do this type of stress test if a user doesn’t do it with an actual use case within the app. If a user does do it, you need to configure column level attribute mapping either way → Excel importer and Exporter modules. These are there for a reason, to align and validate data models between Mendix and Excel 

 

answered
1

Hi Rosewater. This is an unjustified rant based on a false assumption. The forum-question was solved quickly, max within days, not the month you claim it to have taken. The datagrid does have a single button  to download the content, and there are modules for up-and download via several formats. Glad to help you out with a problem, but you will have to be specific as to the error you run into.

Have a nice day, Tim

answered