PDA

View Full Version : OutOfMemoryException when trying to display 197k hands in Reports



Ivan Miwa
07-30-2013, 12:57 PM
Hi,

I'm trying to list all hands I played this year at Microgaming, so I can export them to my HD. There's about 198k hands. When I try to list them all in Reports, I get the following error:

System.OutOfMemoryException: Exceção do tipo 'System.OutOfMemoryException' foi acionada.
em System.Array.InternalCreate(Void* elementType, Int32 rank, Int32* pLengths, Int32* pLowerBounds)
em System.Array.CreateInstance(Type elementType, Int32 length)
em System.Collections.ArrayList.ToArray(Type type)
em DevComponents.DotNetBar.៬.៴()
em DevComponents.DotNetBar.៬.ൃ(IntPtr ୲, IntPtr ୳, IntPtr ୴)
em DevComponents.DotNetBar.៶.PreFilterMessage(Message& m)
em System.Windows.Forms.Application.ThreadContext.Pro cessFilters(MSG& msg, Boolean& modified)
em System.Windows.Forms.Application.ThreadContext.Pre TranslateMessage(MSG& msg)
em System.Windows.Forms.Application.ThreadContext.Sys tem.Windows.Forms.UnsafeNativeMethods.IMsoComponen t.FPreTranslateMessage(MSG& msg)
em System.Windows.Forms.Application.ComponentManager. System.Windows.Forms.UnsafeNativeMethods.IMsoCompo nentManager.FPushMessageLoop(Int32 dwComponentID, Int32 reason, Int32 pvLoopData)
em System.Windows.Forms.Application.ThreadContext.Run MessageLoopInner(Int32 reason, ApplicationContext context)
em System.Windows.Forms.Application.ThreadContext.Run MessageLoop(Int32 reason, ApplicationContext context)
em System.Windows.Forms.Application.RunDialog(Form form)
em System.Windows.Forms.Form.ShowDialog(IWin32Window owner)
em System.Windows.Forms.Form.ShowDialog()
em System.Windows.Forms.Application.ThreadContext.OnT hreadException(Exception t)
em System.Windows.Forms.Control.InvokeMarshaledCallba cks()
em System.Windows.Forms.Control.WndProc(Message& m)
em System.Windows.Forms.Control.ControlNativeWindow.O nMessage(Message& m)
em System.Windows.Forms.Control.ControlNativeWindow.W ndProc(Message& m)
em System.Windows.Forms.NativeWindow.Callback(IntPtr hWnd, Int32 msg, IntPtr wparam, IntPtr lparam)

I also tried exporting the hands by month (about 30k hands/month), but I still get an OutOfMemory exception.

I've seen this error before when trying to graph all hands in my database (about 3.8 million hands).

Any clues? I'm using version 1.12.10b

Patvs
07-30-2013, 07:50 PM
Update:
http://www.holdemmanager.com/Downloads/HmUpdate_Release_1.13.01_26Jul2013.exe


Which PostgreSQL version are you using?
Try editing your PostgreSQL.config file (read:
http://forums.holdemmanager.com/manager-general/11194-top-10-hem-performance-increase-tips.html)

How much RAM does your computer have?

Ivan Miwa
07-30-2013, 07:56 PM
I'll update HM and try it again.
UPDATE: Got the same error.

I have PostgreSQL 8.3. I've already modified the *.conf file.

16GB of RAM.

One thing I forgot to mention, I also get an error when trying to optimize my DB.


30/07/2013 20:55] error: ERROR: XX001: invalid page header in block 284 of relation "compiledplayerresultspositionaction_month"[30/07/2013 20:55] error: em Npgsql.NpgsqlState.<ProcessBackendResponses_Ver_3>d__a.MoveNext()
em Npgsql.ForwardsOnlyDataReader.GetNextResponseObjec t()
em Npgsql.ForwardsOnlyDataReader.GetNextRowDescriptio n()
em Npgsql.ForwardsOnlyDataReader.NextResult()
em Npgsql.ForwardsOnlyDataReader..ctor(IEnumerable`1 dataEnumeration, CommandBehavior behavior, NpgsqlCommand command, NotificationThreadBlock threadBlock, Boolean synchOnReadError)
em Npgsql.NpgsqlCommand.GetReader(CommandBehavior cb)
em Npgsql.NpgsqlCommand.ExecuteNonQuery()
em HoldemManagerDatabaseMaintenance.MainScreen.optimi zeDb(String db, Int32 type)
em HoldemManagerDatabaseMaintenance.MainScreen.optimi zeAsync()[30/07/2013 20:55] Error...please contact support@holdemmanager.com

udbrky
07-31-2013, 03:16 PM
1) Please close HM

2) Please open PGAdminIII

It is in the Start -> Postgres folder.

3) Enter your postgres password. The default password is typically postgrespass.

4) Open the databases.

5) Highlight your database.

6) Right click, click maintenance.

7) Run the vacuum and analyze and reindex functions.

http://faq.holdemmanager.com/questions/88/Vacuum+Analyze+Database+

Please try again.

Patvs
07-31-2013, 05:03 PM
And if that doesn't resolve it, reimport all your hands into a new empty database.