Buffer underflow ошибка

ДЛЯ ТЕХ, КТО БЕГАЕТ МАПЫ
Смените убежку и вернитесь назад.
Исчезнут открытые порталы, но затем все работает.
Мне помогло.
Но даже после этого, если через Зану открывать карту с гвардом Сириуса, у меня все равно крашит.
Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.
Кому помогло, отпишитесь в теме, что бы больше народу увидело.
UPD: Сейчас пробую перед открытием каждой карты менять убежку (чередую два убежища)
UPD: Включил мапу-пробежал, свапнул убежку-включил-пробежал-свапнул на старую убежку и так по кругу (2 убежища чередую) пока полет нормальный.
ДЛЯ ТЕХ, КТО БЕГАЕТ СЮЖЕТКУ
Удалите папку «Minimap» отсюда(можете скопировать и вставить в проводник)
C:\Users\User\Documents\My Games\Path of Exile
И запустите локацию через Ctrl

Последняя редакция: divandivan. Время: 22 марта 2020 г., 1:45:14

Last bumped23 марта 2020 г., 20:35:20

Avatar

Сообщение
divandivan
21 марта 2020 г., 21:20:56

Спонсор Святилища

Спонсор Ненасытной злобы

Спонсор Элитный веропоклонник

Спонсор Полубог асов

Спонсор Рьяный адепт

Цитировать это сообщение

Не мне не помогло, крешится.

Holy Kuduku show me the way!

Avatar

Сообщение
0xck
21 марта 2020 г., 22:53:15

Спонсор Вершитель

Спонсор Великого святилища

Спонсор Мастер колдовского клинка

Спонсор Вечного проклятия

Спонсор Элитный веропоклонник

Спонсор Серебряного полумесяца

Цитировать это сообщение

«

divandivan написал:

Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.

Нет. Неверная догадка. Ошибки при формировании области. Любые танцы с бубном упираются в то, что есть шанс пересоздать область без ошибки, а есть — с ошибкой. Повезло — еще чуток поиграешь и придешь к крашу. Не повезло — краш повторится сразу.

Решение проблемы одно — ждать пока ГыГыГы не починят игру.

Avatar

Сообщение
Alexxxxx1982
21 марта 2020 г., 22:59:48

Спонсор Наследия

Спонсор Ориата

Спонсор Лич Бездны

Спонсор Повелитель Разлома

Спонсор Гарпия

Спонсор Страж крови

Спонсор Рыцарь

Цитировать это сообщение

А смысл менять хайдаут? Я открываю мапу, ловлю ошибку, вылетаю, захожу в игру и поверх старой мапы открываю новую и все работает.Ошибка встречается примерно раз в 10 мап.Такое ощущение, что дело в каких-то модах на мапах.

Avatar

Сообщение
OrenStyle
22 марта 2020 г., 0:19:35

Забанен

Цитировать это сообщение

«

OrenStyle написал:

А смысл менять хайдаут? Я открываю мапу, ловлю ошибку, вылетаю, захожу в игру и поверх старой мапы открываю новую и все работает.Ошибка встречается примерно раз в 10 мап.Такое ощущение, что дело в каких-то модах на мапах.

Ну вообще-то нет. Сейчас создал нового персонажа и не могу попасть на кладбище кораблей. Банально вылетает с этой ошибкой, хоть танцуй с бубном, хоть нет. Так что это проблема какого-то патча — ошибка накопилась, либо это dev.hands и мозг.drv виноваты!

!МНЕ ПОМОГЛО!
Загружаюсь на любую локу, которая не виснет(я в сюжетке). Потом делаю ТП в город, потом иду на нужную карту(которая до этого глючила). Пропускает.

Последняя редакция: im_barber. Время: 22 марта 2020 г., 0:33:40

Avatar

Сообщение
im_barber
22 марта 2020 г., 0:24:00

Цитировать это сообщение

«

im_barber написал:

Ну вообще-то нет. Сейчас создал нового персонажа и не могу попасть на кладбище кораблей. Банально вылетает с этой ошибкой, хоть танцуй с бубном, хоть нет. Так что это проблема какого-то патча — ошибка накопилась, либо это dev.hands и мозг.drv виноваты!

А, так она даже в сюжетке встречается.Не прочитал в первом посте про сюжетку.Ну тогда хз че за дела такие.У меня без смены хайдаута мапы нормально работают.Вот только как уже говорил, примерно раз в 10 мап возникает эта ошибка, но после переоткрытия мапы все опять работает.

Последняя редакция: OrenStyle. Время: 22 марта 2020 г., 0:31:15

Avatar

Сообщение
OrenStyle
22 марта 2020 г., 0:28:13

Забанен

Цитировать это сообщение

Не заходит в локацию Жатва… Играть не возможно. Подлива короче

Avatar

Сообщение
Dizl87
22 марта 2020 г., 1:38:11

Цитировать это сообщение

Мда, щас словит такую ошибку, ппц

Avatar

Сообщение
drochun1488
22 марта 2020 г., 2:55:09

Цитировать это сообщение

Реально хрен знает что делать, я не могу второй день сюжетку пройти, читал в инете, проблема с буфером, он переполняется, типо так на некоторых форумах объясняют эту ошибку.

Avatar

Сообщение
Grisd
22 марта 2020 г., 9:06:35

Цитировать это сообщение

«

divandivan написал:

ДЛЯ ТЕХ, КТО БЕГАЕТ МАПЫ
Смените убежку и вернитесь назад.
Исчезнут открытые порталы, но затем все работает.
Мне помогло.
Но даже после этого, если через Зану открывать карту с гвардом Сириуса, у меня все равно крашит.
Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.
Кому помогло, отпишитесь в теме, что бы больше народу увидело.
UPD: Сейчас пробую перед открытием каждой карты менять убежку (чередую два убежища)
UPD: Включил мапу-пробежал, свапнул убежку-включил-пробежал-свапнул на старую убежку и так по кругу (2 убежища чередую) пока полет нормальный.
ДЛЯ ТЕХ, КТО БЕГАЕТ СЮЖЕТКУ
Удалите папку «Minimap» отсюда(можете скопировать и вставить в проводник)
C:\Users\User\Documents\My Games\Path of Exile
И запустите локацию через Ctrl

На стадии сюжетки помогло! Ну по крайней мере перешёл на следующую локу 1 раз)

Avatar

Сообщение
echtaco
22 марта 2020 г., 9:12:47

Цитировать это сообщение

Sometimes I get an error message when I Play (or Record) a scene which refers to a buffer underflow (or overflow). What causes this, and how do I fix it?

Issues to Ponder:

First, note that these conditions CAN be caused by many factors which prevent video data being read from or saved to the hard disk properly.
SCSI errors (improper bus termination, poor connections etc.) can result in damaged data being written to the drive (mangled JPEGs) or data flow problems. SCSI bus issues can prevent video being streamed to and from the drive quickly enough to satisfy system requirements. Usually, SCSI errors will show up elswhere as well — transient error messages from the OS (checksum and bad block errors), frequent lockups and drive validation problems, and intermittent bootup failures are typical.
External video problems (sync, cabling etc.) can also be responsible for poor frames being recorded (or NOT being recorded!) When bad data is encountered, obviously playback halts. In either case above, buffer underflow can occur even though the buffer settings ARE CORRECT! If you are pretty sure you don’t have these kind of problems (you haven’t added or removed any drives lately, and the system behaves reasonably well otherwise), read on….

The RAM Buffer:

MovieShop uses a RAM buffer (temporary memory space) to ensure smooth transfer of video and audio data to and from the hard disk(s). Some other NLE systems simply drop frames instead, and you have to hope no-one notices! Another benefit of this arrangement is that less expensive (and often faster) non-AV rated hard disks can be used on the DraCo.

Max Buffer Size:

The maximum size of the buffer allocated is adjustable — the location of the slider depends on the version of MovieShop you use. In version 4.x, it is accessed from the Settings/Project menu. Sliders are located in the upper part of the tabbed panels for Video and Audio. A similar slider is hidden away in MovieShop v.5, and can only be accesssed by opening the Advanced Options window — see below for instructions.
The max Video buffer setting defaults to 2 megs, and this is generally adequate on a DraCo (before the 32 bit DCM card arrived, the lower transfer rates of the Zorro II bus used by the VlabMotion card meant much higher RAM buffers were common.) Changing this number is generally not necessary, but if all else fails you could bump it up a bit as an experiment.

Record and Play Burst:

Much more important than the max buffer size, are the settings for ‘Record’ and ‘Play Burst!’ These settings limit the size of a single ‘chunk’ of data which can be written to, or read from) the RAM buffer. The default settings for both Video sliders is 256 kbytes. This setting generally works well. However some hard drives ‘prefer’ to read and write data in larger or smaller ‘bite sizes,’ just as some people like their food chewed to a finer or lesser degree. It’s not uncommon that adding or changing a drive can dictate an adjustment. If you frequently see under/overflow messages on Record or Play — especially when the problem occurs well (15 seconds or more) into playback — adjustment could well solve the problem. If the problem relates principally to playback errors occuring just after pressing Play, see the discussion of ‘Preload Size’ below.
Please note: while the settings are adjustable for both Video and Audio, we have never yet encountered a problem with the default Audio settings, so the discussion which follows refers only to the Video settings.

Accessing Buffer Settings:

To access the adjustment sliders, you must open the hidden ‘Advanced Options’ window. Press and hold the ‘Right DraCo‘ key, and press ‘e‘. The ‘Execute Command‘ string requester will appear. At the cursor, type the command ‘openwindow advopts‘ — don’t enter the quotation marks — then press the Enter/Return key. The Advanced Options window should appear.
Click on the ‘Buffer‘ tab. In version 5, this is where the max buffer sliders are found. The left side of the panel exposes the Video settings.

Optimizing the Burst Settings:

As a general rule, identical settings for Play and Record seem to work just fine. Here’s one way to determine optimal settings: Load a current project, then access the Advanced Options window as described above. Open the Scene list, and click on a typical scene, preferably one which lasts at least a couple of minutes. Before doing anything else, open the ‘Status‘ window by selecting the Movie Shop menu item ‘Windows/Status‘. This little window shows three vertical ‘LEDs’ — the center one shows Video drive space in use; the right-hand strip refers to Audio space used. The left-most stripe is the one we’re interested in. It shows RAM Buffer useage in real time.
Now we’re ready — click Play in the Scene Control panel, and observe the activity of the buffer ‘LED’ in the Status Window as the video plays back. If the level of data in the buffer during playback is not being replenished by the hard disk quickly enough, the Buffer level will begin to decrease. It may take 15-30 seconds or more, but sooner or later there will be no video left to play from the buffer. Video playback will halt, and the ‘video buffer underflow’ error will appear … the buffer has ‘run dry!’ Again, if this error occurs IMMEDIATELY on pressing play, see the segment below regarding Preload Size. (If it doesn’t happen, you don’t seem to have a problem — why are you reading this?)
Try a different setting. To begin with, don’t get wild — just move the Playback slider one notch either way and try playback again. Watch for a change in the buffer useage pattern, as shown in the Status window. When you raise or lower the slider, you’ll see a corresponding change in size of the ‘jumps’ the ‘LED’ displays on playback, but we’re not concerned about that particularly. 

What we DO want to acheive is to find a burst size which our hard disk can happily live with

 — you’ll know you’re moving in the right direction when playback goes longer and longer before a problem occurs. Ultimately, you should quickly find an optimal setting permitting virtually endless playback without a glitch! Set the Record Burst size to the same setting, and you should have solved your problem.

Preload Size:

Also important is the ‘Pre Load Size.’ This setting determines how much data is preloaded into the buffer when you hit the ‘Play’ gadget BEFORE playback actually begins. Think of this setting as enabling the system to ‘build up a little steam’ before playback commences. (See above to locate this parameter’s slider.)
Often, a hard drive will perform a themal recalibration shortly after playback begins. If the buffer was not sufficiently ‘preloaded,’ there might be no video data available in the buffer to permit continuous playback during this little ‘hiccup.’ Video playback would fail, usually resulting in a ‘video buffer underflow’ error. This slider defaults to 1 meg. Increasing the setting to 1.3 or 1.4megs will often cure a system experiencing playback problems that occur right after hitting Play.

ДЛЯ ТЕХ, КТО БЕГАЕТ МАПЫ
Смените убежку и вернитесь назад.
Исчезнут открытые порталы, но затем все работает.
Мне помогло.
Но даже после этого, если через Зану открывать карту с гвардом Сириуса, у меня все равно крашит.
Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.
Кому помогло, отпишитесь в теме, что бы больше народу увидело.
UPD: Сейчас пробую перед открытием каждой карты менять убежку (чередую два убежища)
UPD: Включил мапу-пробежал, свапнул убежку-включил-пробежал-свапнул на старую убежку и так по кругу (2 убежища чередую) пока полет нормальный.
ДЛЯ ТЕХ, КТО БЕГАЕТ СЮЖЕТКУ
Удалите папку «Minimap» отсюда(можете скопировать и вставить в проводник)
C:UsersUserDocumentsMy GamesPath of Exile
И запустите локацию через Ctrl

Последняя редакция: divandivan. Время: 22 марта 2020 г., 1:45:14

Last bumped23 марта 2020 г., 20:35:20

Avatar

Сообщение
divandivan
21 марта 2020 г., 21:20:56

Спонсор Святилища

Спонсор Ненасытной злобы

Спонсор Элитный веропоклонник

Спонсор Полубог асов

Цитировать это сообщение

Не мне не помогло, крешится.

Holy Kuduku show me the way!

Avatar

Сообщение
0xck
21 марта 2020 г., 22:53:15

Спонсор Вершитель

Спонсор Великого святилища

Спонсор Мастер колдовского клинка

Спонсор Вечного проклятия

Спонсор Элитный веропоклонник

Спонсор Серебряного полумесяца

Цитировать это сообщение

«

divandivan написал:

Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.

Нет. Неверная догадка. Ошибки при формировании области. Любые танцы с бубном упираются в то, что есть шанс пересоздать область без ошибки, а есть — с ошибкой. Повезло — еще чуток поиграешь и придешь к крашу. Не повезло — краш повторится сразу.

Решение проблемы одно — ждать пока ГыГыГы не починят игру.

Avatar

Сообщение
Alexxxxx1982
21 марта 2020 г., 22:59:48

Спонсор Наследия

Спонсор Ориата

Спонсор Лич Бездны

Спонсор Повелитель Разлома

Спонсор Гарпия

Спонсор Страж крови

Спонсор Рыцарь

Цитировать это сообщение

А смысл менять хайдаут? Я открываю мапу, ловлю ошибку, вылетаю, захожу в игру и поверх старой мапы открываю новую и все работает.Ошибка встречается примерно раз в 10 мап.Такое ощущение, что дело в каких-то модах на мапах.

Avatar

Сообщение
OrenStyle
22 марта 2020 г., 0:19:35

Забанен

Цитировать это сообщение

«

OrenStyle написал:

А смысл менять хайдаут? Я открываю мапу, ловлю ошибку, вылетаю, захожу в игру и поверх старой мапы открываю новую и все работает.Ошибка встречается примерно раз в 10 мап.Такое ощущение, что дело в каких-то модах на мапах.

Ну вообще-то нет. Сейчас создал нового персонажа и не могу попасть на кладбище кораблей. Банально вылетает с этой ошибкой, хоть танцуй с бубном, хоть нет. Так что это проблема какого-то патча — ошибка накопилась, либо это dev.hands и мозг.drv виноваты!

!МНЕ ПОМОГЛО!
Загружаюсь на любую локу, которая не виснет(я в сюжетке). Потом делаю ТП в город, потом иду на нужную карту(которая до этого глючила). Пропускает.

Последняя редакция: im_barber. Время: 22 марта 2020 г., 0:33:40

Avatar

Сообщение
im_barber
22 марта 2020 г., 0:24:00

Цитировать это сообщение

«

im_barber написал:

Ну вообще-то нет. Сейчас создал нового персонажа и не могу попасть на кладбище кораблей. Банально вылетает с этой ошибкой, хоть танцуй с бубном, хоть нет. Так что это проблема какого-то патча — ошибка накопилась, либо это dev.hands и мозг.drv виноваты!

А, так она даже в сюжетке встречается.Не прочитал в первом посте про сюжетку.Ну тогда хз че за дела такие.У меня без смены хайдаута мапы нормально работают.Вот только как уже говорил, примерно раз в 10 мап возникает эта ошибка, но после переоткрытия мапы все опять работает.

Последняя редакция: OrenStyle. Время: 22 марта 2020 г., 0:31:15

Avatar

Сообщение
OrenStyle
22 марта 2020 г., 0:28:13

Забанен

Цитировать это сообщение

Не заходит в локацию Жатва… Играть не возможно. Подлива короче

Avatar

Сообщение
Dizl87
22 марта 2020 г., 1:38:11

Цитировать это сообщение

Мда, щас словит такую ошибку, ппц

Avatar

Сообщение
drochun1488
22 марта 2020 г., 2:55:09

Цитировать это сообщение

Реально хрен знает что делать, я не могу второй день сюжетку пройти, читал в инете, проблема с буфером, он переполняется, типо так на некоторых форумах объясняют эту ошибку.

Avatar

Сообщение
Grisd
22 марта 2020 г., 9:06:35

Цитировать это сообщение

«

divandivan написал:

ДЛЯ ТЕХ, КТО БЕГАЕТ МАПЫ
Смените убежку и вернитесь назад.
Исчезнут открытые порталы, но затем все работает.
Мне помогло.
Но даже после этого, если через Зану открывать карту с гвардом Сириуса, у меня все равно крашит.
Вроде крашит из-за того что игра считает, что ты не в убежище, хотя ты там. Но это просто догадки.
Кому помогло, отпишитесь в теме, что бы больше народу увидело.
UPD: Сейчас пробую перед открытием каждой карты менять убежку (чередую два убежища)
UPD: Включил мапу-пробежал, свапнул убежку-включил-пробежал-свапнул на старую убежку и так по кругу (2 убежища чередую) пока полет нормальный.
ДЛЯ ТЕХ, КТО БЕГАЕТ СЮЖЕТКУ
Удалите папку «Minimap» отсюда(можете скопировать и вставить в проводник)
C:UsersUserDocumentsMy GamesPath of Exile
И запустите локацию через Ctrl

На стадии сюжетки помогло! Ну по крайней мере перешёл на следующую локу 1 раз)

Avatar

Сообщение
echtaco
22 марта 2020 г., 9:12:47

Цитировать это сообщение

Go to pathofexile

r/pathofexile

A subreddit dedicated to Path of Exile, an ARPG made by Grinding Gear Games. Spiritual successor to Diablo 2




Online

Buffer underflow error

Anyone know how to fix buffer underflow error when entering maps? It’s happening A LOT to a friend today, haven’t been any problems before today. I can’t really find any fixes for it on poe forums n what ever. Is there anyone who used to have this or knows how to fix it ?

We are using Oracle Service Bus for SSL communication to an external party. Due to security regulations we use a proxy server configuration (note: not proxy service, but proxy server) on these specific business services.

After upgrading our OSB to 11g PS4 we wanted to use the JSSE implementation for SSL because in the near future we will need to implement SHA2 certificates. After enabling JSSE (weblogic console -> managed server -> SSL -> Advanced) the outgoing connections still seem to work. However when we send a large message (in our case > 20kb) we receive the following error in our logging:

<Debug> <Socket> <someHostname> <someManagedServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <3fe931....> <13...> <BEA-000400> <buffer underflow in doHandshake>

The source of all knowlegde Wikipedia tells us that:
In computing buffer underrun or buffer underflow is a state occurring when a buffer used to communicate between two devices or processes is fed with data at a lower speed than the data is being read from it. This requires the program or device reading from the buffer to pause its processing while the buffer refills. This can cause undesired and sometimes serious side effects because the data being buffered is generally not suited to stop-start access of this kind.

After enabling Weblogic SSL logging we see the below output (simplified) in the logfiles when sending a small message. The SSLEngine both shows wrap and unwrap methods.

<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: >
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: configured to defer to the admin>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: outbound = true>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: style = BuiltinSSLValidationOnly>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: returning false>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.certificateCallback: returning true because the CertPathValidators should not be called>
<Debug> <SecuritySSL> <BEA-000000> <weblogic user specified trustmanager validation status 0>
<Debug> <SecuritySSL> <BEA-000000> <SSLTrustValidator returns: 0>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: No trust failure, validateErr=0.>
<Debug> <SecuritySSL> <BEA-000000> <Performing hostname validation checks: remote.website.nl>
<Debug> <SecuritySSL> <BEA-000000> <Proxying through ourDMZproxyserver.local>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: Successfully completed post-handshake processing.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 304 bytesProduced = 325.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 2167 bytesProduced = 2188.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.unwrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 164 bytesProduced = 143.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.unwrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 1036 bytesProduced = 1015.>

When sending a larger message the logging seems identical, however the logging stops after the outbound communication (wrap method) and no inbound traphic seems to return (unwrap method).

<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: >
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: configured to defer to the admin>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: outbound = true>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: style = BuiltinSSLValidationOnly>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: returning false>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.certificateCallback: returning true because the CertPathValidators should not be called>
<Debug> <SecuritySSL> <weblogic user specified trustmanager validation status 0>
<Debug> <SecuritySSL> <SSLTrustValidator returns: 0>
<Debug> <SecuritySSL> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: No trust failure, validateErr=0.>
<Debug> <SecuritySSL> <Performing hostname validation checks: remote.website.nl>
<Debug> <SecuritySSL> <Proxying through ourDMZproxyserver.local>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: Successfully completed post-handshake processing.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 306 bytesProduced = 327.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 16384 bytesProduced = 16405.>

At a very high level, the SSLEngine works like this (source: Class SSLEngine @ Oracle):

                |           ^
                |     |     |
                v     |     |
           +----+-----|-----+----+
           |          |          |
           |       SSL|Engine    |
   wrap()  |          |          |  unwrap()
           | OUTBOUND | INBOUND  |
           |          |          |
           +----+-----|-----+----+
                |     |     ^
                |     |     |
                v           |

Remember when we disable JSSE and use the Certicom implementation the process still works perfectly. So everything pointed to the direction of a combination: JSSE + large message = error. Sadly the .log and .out didn’t help in the problem solving here so experimenting with a few tuning parameters did the trick for us.

After configuring the Business Service to use Chunked Streaming Mode the problem was solved and we again succeeded in sending out messages of multiple MB’s to our external trading partners.

When I initially used Google and Oracle Knowledge base to look for the “BEA-000400 buffer underflow in doHandshake” error this was not very helpfull. So hopefully this blogpost is helpfull for others in the future when they have the same problem as us.

I toke a piek at…

Readme

And reduced the sample rate like this

out->SetRate(22050);//44100

The example is running more stable now in my first test. Mybe it has something to do with with my custom partition table of spiffs. I don’t know.

Name,   Type, SubType, Offset,  Size, Flags

nvs, data, nvs, 0x9000, 0x5000,
otadata, data, ota, 0xe000, 0x2000,
app0, app, ota_0, 0x10000, 0x1E0000,
app1, app, ota_1, 0x1F0000,0x1E0000,
eeprom, data, 0x99, 0x3D0000,0x1000,
spiffs, data, spiffs, 0x3D1000,0x2F000,

For the TTS, it plays now but it still keeps being in the loop. When I enable the debug level too debug, I get this log.

[ 12395][D][HTTPClient.cpp:385] disconnect(): tcp keep open for reuse

After a while I get

[248395][D][HTTPClient.cpp:385] disconnect(): tcp keep open for reuse
[248895][D][WiFiClient.cpp:528] connected(): Disconnected: RES: 0, ERR: 128
[248895][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[248896][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘3’ = ‘Buffer underflow’
[248912][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[248917][D][HTTPClient.cpp:400] disconnect(): tcp is closed

Running for 248917 ms…
STATUS(buffer) ‘2’ = ‘Refilling buffer’
[248933][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[248934][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘3’ = ‘Buffer underflow’
[248948][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[248953][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘2’ = ‘Refilling buffer’
[248963][D][HTTPClient.cpp:400] disconnect(): tcp is closed


STATUS(buffer) ‘3’ = ‘Buffer underflow’
[249337][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[249342][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘2’ = ‘Refilling buffer’
[249351][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[249352][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘3’ = ‘Buffer underflow’
[249366][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(mp3) ‘1’ = ‘Decoding error ‘input buffer too small (or EOF)’ at byte offset’
MP3:ERROR_BUFLEN 0
STATUS(buffer) ‘2’ = ‘Refilling buffer’
[249384][D][HTTPClient.cpp:400] disconnect(): tcp is closed

[249384][D][HTTPClient.cpp:400] disconnect(): tcp is closed

STATUS(buffer) ‘3’ = ‘Buffer underflow’
[249399][D][HTTPClient.cpp:400] disconnect(): tcp is closed

stop
[249399][D][HTTPClient.cpp:400] disconnect(): tcp is closed

MP3 done

It toke only 1 second to stop after the tcp was closed. But this is going no where. Mybe if I could detect the state of this play button… A radio doesn’t have that issue.

2021-10-20_090948

And now I see the type of audio is mpeg, Could this be the cause?

What is a buffer underflow?

A buffer underflow, also known as a buffer underrun or a buffer underwrite, is when the buffer — the temporary holding space during data transfer — is fed data at a lower rate than it is being read from.

Buffer underflow errors occur when the flow of data from the original source, typically the hard drive, is interrupted long enough for the buffer to empty itself. As a result, the program or device reading from the buffer pauses. This can cause the writing action to stop, and the program or device receiving the data may be ruined.

Devices or data can suffer serious side effects when the buffer reading action encounters start-stop interruptions due to low speeds. The larger the buffer is, the less likely a buffer underflow will take place or that the transfer will be unsuccessful. For example, a buffer of 10 bits would protect against an interruption of up to 10 seconds before failing while a buffer of 60 bits would cover up to a minute.

While not always a security issue, buffer underflows can create exploitable vulnerabilities and be used to cause a denial-of-service attack, result in data loss and enable remote code execution.

A buffer underflow is the opposite of a buffer overflow, which occurs when the amount of data fed into a buffer exceeds the buffer’s capacity.

What causes a buffer underflow?

Buffer underflows are often caused by broken connections, interrupted physical links or high bandwidth competition.

The error is a common problem when data is burned to a CD. Recording data to a CD must be performed in a real-time, nonstop process. If a computer is not supplying data quickly enough and the signal is interrupted, the CD will not record the data properly.

How to fix a buffer underflow

The following are common ways to fix buffer underflow conditions:

  • Increase the size of the buffer.
  • Perform hard drive defragmentation before burning to an external device.
  • Back up the data being transferred before writing.
  • Avoid burning data onto a device over a network.
  • Use hard drive scanning software to identify corrupted files before attempting an export.
  • Check CPU and hard drive speed requirements to ensure there is enough RAM and hard disk space to complete the task.
  • Make sure the device being written to functions properly.

Editor’s note: This article was written by Sarah Lewis in 2018. TechTarget editors revised it in 2022 to improve the reader experience.

This was last updated in November 2022


Continue Reading About buffer underflow

  • More on buffer underwrite vulnerabilities from The Mitre Corporation
  • How to prevent buffer overflow attacks
  • What is shellcode and how is it used?
  • Quiz: Web application security threats and vulnerabilities
  • Application security threats and how to prevent them

Dig Deeper on Threats and vulnerabilities

  • What is a jitter buffer used for?

    CarrieGoetz

    By: Carrie Goetz

  • translation lookaside buffer (TLB)

    RahulAwati

    By: Rahul Awati

  • OpenSSL vulnerabilities ‘not as bad as feared’

    AlexScroxton

    By: Alex Scroxton

  • OpenSSL vulnerabilities get high-priority patches

    ShaunNichols

    By: Shaun Nichols

What is Error 0x80040264?

Error 0x80040264 is a kind of Runtime error that is found in the Microsoft Windows operating systems. The file can be found for DirectShow. VFW_E_BUFFER_UNDERFLOW has a popularity rating of 1 / 10.

Errors

This tutorial contains information on Error 0x80040264 or otherwise known as VFW_E_BUFFER_UNDERFLOW. Errors such as VFW_E_BUFFER_UNDERFLOW indicate your machine has faulty hardware or software that should be fixed when possible. Below is information on how to repair Error 0x80040264 and get your computer back to normal.

Megaphone Signs of Error 0x80040264:

  • When your computer freezes or locks up at random.
  • When your computer crashes when you are running DirectShow.
  • If VFW_E_BUFFER_UNDERFLOW pops up and causes a program to shutdown or your computer to crash.
  • Your computer is running slow, taking a long time to boot up, and you suspect Error 0x80040264 by DirectShow is the cause.

What Causes Runtime Errors Like Error 0x80040264?

There are several causes of runtime errors like VFW_E_BUFFER_UNDERFLOW, such as viruses, out of date drivers, missing files or folders, incomplete or poor installation, and registry errors. They can also occur due to an issue with the computer’s memory, which may often be due to a hardware problem. In some cases there was an issue installing DirectShow and an error occurred.

Fix How to Fix VFW_E_BUFFER_UNDERFLOW

Follow the step by step instructions below to fix the Error 0x80040264 problem. We recommend you do each in order. If you wish to skip these steps because they are too time consuming or you are not a computer expert, see our easier solution below.

Step 1 — Uninstall and Reinstall DirectShow

If the VFW_E_BUFFER_UNDERFLOW is a result of using DirectShow, you may want to try reinstalling it and see if the problem is fixed. Please follow these steps:

Windows XP

  1. Click “Start Menu”.
  2. Click “Control Panel”.
  3. Select the “Add or Remove” program icon.
  4. Find the Error 0x80040264 associated program.
  5. Click the Change/Remove button on the right side.
  6. The uninstaller pop up will give you instructions. Click “okay” or “next”  or “yes” until it is complete.
  7. Reinstall the software.

Windows 7 and Windows Vista

  1. Click “Start Menu”.
  2. Click “Control Panel”.
  3. Click “Uninstall a Program” which is under the “Programs” header.
  4. Find the Error 0x80040264 associated program.
  5. Right click on it and select “Uninstall”.
  6. The uninstaller pop up will give you instructions. Click “okay” or “next”  or “yes” until it is complete.
  7. Reinstall the software and run the program.

Windows 8, 8.1, and 10

  1. Click “Start Menu”.
  2. Click “Programs and Features”.
  3. Find the software that is linked to **insert file name**.
  4. Click Uninstall/Change.
  5. The uninstaller will pop up and give you instructions. Click “okay” and “next” until it is complete.
  6. Restart your computer.
  7. Reinstall the software and run the program.

Step 2 — Remove Registry Entry related to Error 0x80040264

Warning WARNING: Do NOT edit the Windows Registry unless you absolutely know what you are doing. You may end up causing more trouble than you start with. Proceed at your OWN RISK.

  1. Create a backup of registry files.
  2. Click “Start”.
  3. Type regedit, select it, and grant permission in order to proceed.
  4. Click HKEY LOCAL MACHINE>>SOFTWARE>>Microsoft>>Windows>>Current Version>>Uninstall.
  5. Find the VFW_E_BUFFER_UNDERFLOW software from the list you wish to uninstall.
  6. Select the software and double click the UninstallString icon on the right side.
  7. Copy the highlighted text.
  8. Exit and go to the search field.
  9. Paste the data.
  10. Select Okay in order to uninstall the program.
  11. Reinstall the software.

Step 3 – Ensure Junk Isn’t Causing VFW_E_BUFFER_UNDERFLOW

Any space that isn’t regularly cleaned out tends to accumulate junk. Your personal computer is no exception. Constant web browsing, installation of applications, and even browser thumbnail caches slow down your device and in the absence of adequate memory, can also trigger a VFW_E_BUFFER_UNDERFLOW error.

So how do you get around this problem?

  • You can either use the Disk Cleanup Tool that comes baked into your Windows operating system.
  • Or you can use a more specialized hard drive clean up solution that does a thorough job and flushes the most stubborn temporary files from your system.

Both solutions may take several minutes to complete the processing of your system data if you haven’t conducted a clean up in a while.
The browser caches are almost a lost cause because they tend to fill up quite rapidly, thanks to our constantly connected and on the go lifestyle.
Here’s how you can run the Window’s Disk Cleanup Tool, without performance issues or surprises.

  • For Windows XP and Windows 7, the program can be ran from “Start” and from the “Command Prompt”.
    • Click “Start”, go to All Programs > Accessories > System Tools, click Disk Cleanup. Next choose the type of files you wish to remove, click OK, followed by “Delete Files”.
    • Open up the Command Prompt, type “c:\windows\cleanmgr.exe /d” for XP and “cleanmgr” for Windows 7. Finish by pressing “Enter”.
  • For Windows 8 and Windows 8.1, the Disk Cleanup Tool can be accessed directly from “Settings”. Click “Control Panel” and then “Administrative Tools”. You can select the drive that you want to run the clean up on. Select the files you want to get rid of and then click “OK” and “Delete Files”.
  • For Windows 10, the process is simplified further. Type Disk Cleanup directly in the search bar and press “Enter”. Choose the drive and then the files that you wish to wipe. Click “OK”, followed by “Delete Files”.

The progressive ease with which the Cleanup Tool can be used points to the growing importance of regularly deleting temporary files and its place in preventing VFW_E_BUFFER_UNDERFLOW.

Warning PRO TIP:
Remember to run the Disk Cleanup as an administrator.


Step 4 – Fix Infections and Eliminate Malware in Your PC

How do you gauge if your system is infected with a malware and virus?

Well, for one, you may find certain applications misbehaving.

And you may also see the occurrence of Error 0x80040264.

Infections and malware are the result of:

  • Browsing the Internet using open or unencrypted public Wi-Fi connections
  • Downloading applications from unknown and untrustworthy sources
  • Intentional planting of viruses in your home and office networks

But thankfully, their impact can be contained.

  • Enter “safe mode” by pressing the F8 key repeatedly when your device is restarting. Choose “Safe Mode with Networking” from the Advanced Boot Options menu.
  • Back up all the data in your device to a secure location. This is preferably a storage unit that is not connected to your existing network.
  • Leave program files as is. They are where the infection generally spreads from and may have been compromised.
  • Run a thorough full-system scan or check of an on-demand scanner. If you already have an antivirus or anti-malware program installed, let it do the heavy lifting.
  • Restart your computer once the process has run its course.
  • Lastly, change all your passwords and update your drivers and operating system.

Warning PRO TIP: Are you annoyed by the frequent updates to your antivirus program? Don’t be! These regular updates add new virus signatures to your software database for exponentially better protection.


Step 5 – Return to the Past to Eliminate Error 0x80040264

The steps outlined up until this point in the tutorial should have fixed VFW_E_BUFFER_UNDERFLOW error. But the process of tracking what has caused an error is a series of educated guesses. So in case the situation persists, move to Step 5.

Windows devices give users the ability to travel back in time and restore system settings to an uncorrupted, error free state.
This can be done through the convenient “System Restore” program. The best part of the process is the fact that using System Restore doesn’t affect your personal data. There is no need to take backups of new songs and pictures in your hard drive.

  • Open “Control Panel” and click on “System & Security”.
  • Choose the option “System”.
  • To the left of the modal, click on “System Protection”.
  • The System Properties window should pop-up. You’ll be able to see the option “System Restore”. Click on it.
  • Go with “Recommended restore” for the path of least hassles and surprises.
  • Choose a system restore point (by date) that will guarantee taking your device back to the time when Error 0x80040264 hasn’t been triggered yet.
  • Tap “Next” and wrap up by clicking “Finish”.

If you’re using Windows 7 OS, you can reach “System Restore” by following the path Start > All Programs > Accessories > System Tools.


Step 6 — Error 0x80040264 Caused by Outdated Drivers

Updating a driver is not as common as updating your operating system or an application used to run front-end interface tasks.

Drivers are software snippets in charge of the different hardware units that keep your device functional.

So when you detect an VFW_E_BUFFER_UNDERFLOW error, updating your drivers may be a good bet. But it is time consuming and shouldn’t be viewed as a quick fix.

Here’s the step-by-step process you can go through to update drivers for Windows 8, Windows 8.1 and Windows 10.

  • Check the site of your hardware maker for the latest versions of all the drivers you need. Download and extract them. We strongly advice going with original drivers. In most cases, they are available for free on the vendor website. Installing an incompatible driver causes more problems than it can ever fix.
  • Open “Device Manager” from the Control Panel.
  • Go through the various hardware component groupings and choose the ones you would like to update.
  • On Windows 10 and Windows 8, right-click on the icon of the hardware you would like to update and click “Update Driver”.
  • On Windows 7 and Vista, you right-click the hardware icon, choose “Properties”, navigate to the Driver panel, and then click “Update Driver”.
  • Next you can let your device automatically search for the most compatible drivers, or you can choose to update the drivers from the versions you have on your hard drive. If you have an installer disk, then the latter should be your preferred course of action. The former may often get the driver selection incorrect.
  • You may need to navigate a host of warnings from the Windows OS as you finalize the driver update. These include “Windows can’t verify that the driver is compatible” and “Windows can’t verify the publisher of this driver”. If you know that you have the right one in line, click “Yes”.
  • Restart the system and hopefully the VFW_E_BUFFER_UNDERFLOW error should have been fixed.

Step 7 – Call the Windows System File Checker into Action

By now the VFW_E_BUFFER_UNDERFLOW plaguing your device should have been fixed. But if you haven’t resolved the issue yet, you can explore the Windows File Checker option.

With the Windows File Checker, you can audit all the system files your device needs to operate, locate missing ones, and restore them.
Sound familiar? It is almost like “System Restore”, but not quite. The System Restore essentially takes you back in time to a supposedly perfect set up of system files. The File Checker is more exhaustive.

It identifies what is amiss and fills the gaps.

  • First and foremost, open up an elevated command prompt.
  • Next, if you are using Windows 8, 8.1 or 10, enter “DISM.exe /Online /Cleanup-image /Restorehealth” into the window and press Enter.
  • The process of running the Deployment Image Servicing and Management (DISM) tool may take several minutes.
  • Once it completes, type the following command into the prompt “sfc /scannow”.
  • Your device will now go through all protected files and if it detects an anomaly, it will replace the compromised version with a cached version that resides at %WinDir%\System32\dllcache.

Step 8 – Is your RAM Corrupted? Find Out.

Is it possible? Can the memory sticks of your device trigger Error 0x80040264?

It is unlikely – because the RAM chips have no moving parts and consume little power. But at this stage, if all else has failed, diagnosing your RAM may be a good move.

You can use the Windows Memory Diagnostics Tool to get the job done. Users who are on a Linux or Mac and are experiencing crashes can use memtest86.

  • Open up your device and go straight to the “Control Panel”.
  • Click on “Administrative Tools”.
  • Choose “Windows Memory Diagnostic”.
  • What this built-in option does is it burns an ISO image of your RAM and boots the computer from this image.
  • The process takes a while to complete. Once it is done, the “Status” field at the bottom of the screen populates with the result of the diagnosis. If there are no issues with your RAM/memory, you’ll see “No problems have been detected”.

One drawback of the Windows Memory Diagnostic tool pertains to the number of passes it runs and the RAM segments it checks.

Memtest86 methodically goes over all the segments of your memory – irrespective of whether it is occupied or not.

But the Windows alternative only checks the occupied memory segments and may be ineffective in gauging the cause of the VFW_E_BUFFER_UNDERFLOW error.


Step 9 – Is your Hard Drive Corrupted? Find Out.

Your RAM or working memory isn’t the only culprit that may precipitate an VFW_E_BUFFER_UNDERFLOW error. The hard drive of your device also warrants close inspection.

The symptoms of hard drive error and corruption span:

  • Frequent crashes and the Blue Screen of Death (BSoD).
  • Performance issues like excessively slow responses.
  • Errors like Error 0x80040264.

Hard drives are definitely robust, but they don’t last forever.

There are three things that you can do to diagnose the health of your permanent memory.

  • It is possible that your device may have a hard time reading your drive. This can be the cause of an VFW_E_BUFFER_UNDERFLOW error. You should eliminate this possibility by connecting your drive to another device and checking for the recurrence of the issue. If nothing happens, your drive health is okay.
  • Collect S.M.A.R.T data by using the WMIC (Windows Management Instrumentation Command-line) in the command prompt. To do this, simply type “wmic” into the command prompt and press Enter. Next follow it up with “diskdrive get status”. The S.M.A.R.T status reading is a reliable indicator of the longevity of your drive.
  • Fix what’s corrupt. Let’s assume you do find that all isn’t well with your hard drive. Before you invest in an expensive replacement, using Check Disk or chkdsk is worth a shot.
    • Open the command prompt. Make sure you are in Admin mode.
    • Type “chkdsk C: /F /X /R” and press “Enter”. “C” here is the drive letter and “R” recovers data, if possible, from the bad sectors.
    • Allow the system to restart if the prompt shows up.
    • And you should be done.

These steps can lead to the resolution you’re seeking. Otherwise the VFW_E_BUFFER_UNDERFLOW may appear again. If it does, move to Step 10.


Step 10 – Update Windows OS

Like the software applications you use to render specific tasks on your device, the Operating System also requires periodic updates.
Yes, we’ve all heard the troubling stories.

Devices often develop problems post unfinished updates that do not go through. But these OS updates include important security patches. Not having them applied to your system leaves it vulnerable to viruses and malware.

And may also trigger Error 0x80040264.

So here’s how Windows 7, Windows 8, Windows 8.1 and Windows 10 users can check for the latest updates and push them through:

  • Click the “Start” button on the lower left-hand corner of your device.
  • Type “Updates” in the search bar. There should be a “Windows Update” or “Check for Updates” option, based on the OS version you’re using.
  • Click it. The system will let you know if any updates are available.
  • You have the convenience of choosing the components of the update you’d like to push through. Always prioritize the security updates.
  • Click “OK” followed by “Install Updates”.

Step 11 – Refresh the OS to Eliminate Persistent VFW_E_BUFFER_UNDERFLOW Error

“Windows Refresh” is a lifesaver.

For those of you who are still with us and nothing has worked to eliminate the Error 0x80040264, until recently, a fresh install of Windows would have been the only option.

Not anymore.

The Windows Refresh is similar to reinstalling your Windows OS, but without touching your personal data. That’s hours of backup time saved in a jiffy.

Through the Refresh, all your system files become good as new. The only minor annoyance is the fact that any custom apps you’ve installed are gone and the system applications you had uninstalled are back.

Still, it is the best bet as the final step of this process.

  • Enter the “Settings” of your PC and click on “Change Settings”.
  • Click “Update and recovery” and then choose “Recovery”.
  • Select “Keep my files”. This removes apps and settings, but lets your personal files live on.
  • You’ll get some warning messages about the apps that will be uninstalled. If you’ve gone through a recent OS upgrade, the Refresh process makes it so that you can’t go back to your previous OS version – if you should ever feel the need to do it.
  • Click the “Refresh” button.

Are you using an older version of Windows that doesn’t come with the power to “Refresh”?

Maybe it is time to start from scratch.

  • Enter your BIOS set-up.
  • This is where you need to change your computer’s boot order. Make it so that the boot happens not from the existing system files, but from the CD/DVD Drive.
  • Place the original Windows disk in the CD/DVD drive.
  • Turn on or restart the device.
  • Choose where you’d like the system files to be installed.
  • Your PC will restart several times as the process runs its course.


FAQ’s

Do Runtime Errors Like Error 0x80040264 Mean My Computer is Infected?

Runtime errors are usually not associated with viruses. Sometimes they will come disguised as false alerts which are actually viruses in disguise. These are mostly pretty easy to distinguish, however. In these cases, it is recommended that you scan your computer with an antivirus software.

Do Runtime Errors Mean I Have to Buy a New Computer?

No, you do not if you are battling errors like VFW_E_BUFFER_UNDERFLOW and like VFW_E_BUFFER_UNDERFLOW. Runtime errors generally occur due to software issues and can be sorted out easily. In some cases, bad or aging hardware may be the cause, but such components can also be replaced. Hence, there’s usually no need to buy a new computer due to runtime errors.

Can I Edit the Windows Registry Myself?

The Windows Registry gives you full ownership and allows you to edit permissions so that you can make necessary changes onto it. Right clicking on each file can do the trick. This can be dangerous, however, if you don’t know what you are doing. In situations like this, a better option is to use a program that is specifically designed to solve Registry errors.

Green Arrow

Start Download Now

Author:

Curtis Hansen

Curtis Hansen has been using, fiddling with, and repairing computers ever since he was a little kid. He contributes to this website to help others solve their computer issues without having to buy a new one.

We are using Oracle Service Bus for SSL communication to an external party. Due to security regulations we use a proxy server configuration (note: not proxy service, but proxy server) on these specific business services.

After upgrading our OSB to 11g PS4 we wanted to use the JSSE implementation for SSL because in the near future we will need to implement SHA2 certificates. After enabling JSSE (weblogic console -> managed server -> SSL -> Advanced) the outgoing connections still seem to work. However when we send a large message (in our case > 20kb) we receive the following error in our logging:

<Debug> <Socket> <someHostname> <someManagedServer> <[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)'> <<anonymous>> <> <3fe931....> <13...> <BEA-000400> <buffer underflow in doHandshake>

The source of all knowlegde Wikipedia tells us that:
In computing buffer underrun or buffer underflow is a state occurring when a buffer used to communicate between two devices or processes is fed with data at a lower speed than the data is being read from it. This requires the program or device reading from the buffer to pause its processing while the buffer refills. This can cause undesired and sometimes serious side effects because the data being buffered is generally not suited to stop-start access of this kind.

After enabling Weblogic SSL logging we see the below output (simplified) in the logfiles when sending a small message. The SSLEngine both shows wrap and unwrap methods.

<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: >
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: configured to defer to the admin>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: outbound = true>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: style = BuiltinSSLValidationOnly>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: returning false>
<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.certificateCallback: returning true because the CertPathValidators should not be called>
<Debug> <SecuritySSL> <BEA-000000> <weblogic user specified trustmanager validation status 0>
<Debug> <SecuritySSL> <BEA-000000> <SSLTrustValidator returns: 0>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: No trust failure, validateErr=0.>
<Debug> <SecuritySSL> <BEA-000000> <Performing hostname validation checks: remote.website.nl>
<Debug> <SecuritySSL> <BEA-000000> <Proxying through ourDMZproxyserver.local>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: Successfully completed post-handshake processing.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 304 bytesProduced = 325.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '2' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 2167 bytesProduced = 2188.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.unwrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 164 bytesProduced = 143.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '1' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.unwrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 1036 bytesProduced = 1015.>

When sending a larger message the logging seems identical, however the logging stops after the outbound communication (wrap method) and no inbound traphic seems to return (unwrap method).

<Debug> <SecurityCertPath> <BEA-000000> <CertPathTrustManagerUtils.doCertPathValidation: >
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: configured to defer to the admin>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: outbound = true>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: style = BuiltinSSLValidationOnly>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.doCertPathValidation: returning false>
<Debug> <SecurityCertPath> <CertPathTrustManagerUtils.certificateCallback: returning true because the CertPathValidators should not be called>
<Debug> <SecuritySSL> <weblogic user specified trustmanager validation status 0>
<Debug> <SecuritySSL> <SSLTrustValidator returns: 0>
<Debug> <SecuritySSL> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: No trust failure, validateErr=0.>
<Debug> <SecuritySSL> <Performing hostname validation checks: remote.website.nl>
<Debug> <SecuritySSL> <Proxying through ourDMZproxyserver.local>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: Successfully completed post-handshake processing.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 306 bytesProduced = 327.>
<Debug> <SecuritySSL> <BEA-000000> <[Thread[[ACTIVE] ExecuteThread: '8' for queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]]...SSLENGINE: SSLEngine.wrap(ByteBuffer,ByteBuffer) called: result=Status = OK HandshakeStatus = NOT_HANDSHAKING bytesConsumed = 16384 bytesProduced = 16405.>

At a very high level, the SSLEngine works like this (source: Class SSLEngine @ Oracle):

                |           ^
                |     |     |
                v     |     |
           +----+-----|-----+----+
           |          |          |
           |       SSL|Engine    |
   wrap()  |          |          |  unwrap()
           | OUTBOUND | INBOUND  |
           |          |          |
           +----+-----|-----+----+
                |     |     ^
                |     |     |
                v           |

Remember when we disable JSSE and use the Certicom implementation the process still works perfectly. So everything pointed to the direction of a combination: JSSE + large message = error. Sadly the .log and .out didn’t help in the problem solving here so experimenting with a few tuning parameters did the trick for us.

After configuring the Business Service to use Chunked Streaming Mode the problem was solved and we again succeeded in sending out messages of multiple MB’s to our external trading partners.

When I initially used Google and Oracle Knowledge base to look for the “BEA-000400 buffer underflow in doHandshake” error this was not very helpfull. So hopefully this blogpost is helpfull for others in the future when they have the same problem as us.

Понравилась статья? Поделить с друзьями:
  • Buffalo код ошибки destiny
  • Bucher cityfant 6000 ошибки
  • Buderus ошибки на табло
  • Bubble translate ошибка
  • Buderus ошибка a61