In another thread, Richard asked for more info on Bug 4899. I'm pasting below the output from -dbg any, with two parts. The first is from when Insert > Citation produced an empty list of available citations; the second is from when it produced the expected list. Let me know if I can provide further information.
Bennett EMPTY LIST --------- LyXFunc.cpp(334): Key [action=256][Ctrl+Shift+B] LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 256 arg: '' x: 0 y: 0 LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 217 arg: 'citation' x: 0 y: 0 LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 216 arg: 'citation citation CommandInset citation LatexCommand cite \end_inset ' x: 0 y: 0 filetools.cpp(838): kpse status = 0 kpse result = `/Users/bennett/Library/texmf/bibtex/bib/Bibdatabase-helm-old.bib' BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 0, forceupdate = 0, singlepar = 0] buffer: 0x109095b0 Buffer.cpp(1896): updateMacro of test-bib.lyx LyXFunc.cpp(1680): dispatch msg is BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 1, forceupdate = 0, singlepar = 0] buffer: 0x109095b0 Buffer.cpp(1896): updateMacro of test-bib.lyx GuiWorkArea.cpp(1524): updateTabTexts() iteration start GuiWorkArea.cpp(1541): it = /Users/bennett/Desktop/test-bib.lyx => test-bib GuiWorkArea.cpp(1548): segment ended LyXFunc.cpp(1680): dispatch msg is BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 1, forceupdate = 0, singlepar = 0] buffer: 0x109095b0 Buffer.cpp(1896): updateMacro of test-bib.lyx LyXFunc.cpp(1680): dispatch msg is POPULATED LIST -------------- LyXFunc.cpp(334): Key [action=256][Ctrl+Shift+B] LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 256 arg: '' x: 0 y: 0 LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 217 arg: 'citation' x: 0 y: 0 LyXFunc.cpp(716): LyXFunc::dispatch: cmd: action: 216 arg: 'citation citation CommandInset citation LatexCommand cite \end_inset ' x: 0 y: 0 Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned Messages.cpp(138): Same as entered returned filetools.cpp(838): kpse status = 0 kpse result = `/Users/bennett/Library/texmf/bibtex/bib/Bibdatabase-helm-old.bib' filetools.cpp(838): kpse status = 0 kpse result = `/Users/bennett/Library/texmf/bibtex/bib/Bibdatabase-helm-old.bib' Messages.cpp(138): Same as entered returned BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 0, forceupdate = 0, singlepar = 0] buffer: 0x11bbd0d0 Buffer.cpp(1896): updateMacro of test-bib.lyx LyXFunc.cpp(1680): dispatch msg is BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 1, forceupdate = 0, singlepar = 0] buffer: 0x11bbd0d0 Buffer.cpp(1896): updateMacro of test-bib.lyx Messages.cpp(138): Same as entered returned GuiWorkArea.cpp(1524): updateTabTexts() iteration start GuiWorkArea.cpp(1541): it = /Users/bennett/Desktop/test-bib.lyx => test-bib GuiWorkArea.cpp(1548): segment ended LyXFunc.cpp(1680): dispatch msg is BufferView.cpp(396): BufferView::processUpdateFlags()[fitcursor = 1, forceupdate = 0, singlepar = 0] buffer: 0x11bbd0d0 Buffer.cpp(1896): updateMacro of test-bib.lyx LyXFunc.cpp(1680): dispatch msg is