neumoDVB

RyLe

Member
Joined
Sep 14, 2011
Messages
30
Reaction score
5
Points
8
Age
44
Location
France
My Satellite Setup
Wavefrontier T90, 8W to 28.2E
TBS 6909-X, TBS 6904SE, TBS 6983
My Location
France
Hi

I had no problem building the updated blindscan drivers with a 6.6.2-201.fc39.x86_64 kernel on Fedora 39, nice job :)
I had to add libuuid-devel.x86_64 to be able to build neumodvb.

After installing this lib, the build went nicely, but I have a problem when I try to launch neumodvb:

loading options from /etc/neumodvb/neumodvb.cfg Traceback (most recent call last): File "/usr/bin/neumodvb", line 770, in <module> neumodvb = NeumoGui() ^^^^^^^^^^ File "/usr/bin/neumodvb", line 649, in __init__ self.live_service_screen = LiveServiceScreen(self) ^^^^^^^^^^^^^^^^^^^^^^^ File "/usr/local/lib64/python3.12/site-packages/neumodvb/livescreen.py", line 64, in __init__ self.make_screen() File "/usr/local/lib64/python3.12/site-packages/neumodvb/livescreen.py", line 89, in make_screen self.set_service_screen(service, sort_order=sort_order) File "/usr/local/lib64/python3.12/site-packages/neumodvb/livescreen.py", line 213, in set_service_screen sat = None if h.h.filter_sat.sat_pos == pychdb.sat.sat_pos_none else h.h.filter_sat ^^^^^^^^^^^^^^ AttributeError: 'pychdb.browse_history.browse_history' object has no attribute 'filter_sat' terminate called without an active exception Abandon (core dumped)
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Maybe your installation was not as successful as you thought. Did you notice any compilation errors?
fedora39 has never been tested.
 

RyLe

Member
Joined
Sep 14, 2011
Messages
30
Reaction score
5
Points
8
Age
44
Location
France
My Satellite Setup
Wavefrontier T90, 8W to 28.2E
TBS 6909-X, TBS 6904SE, TBS 6983
My Location
France
Hi

It seems there might be some leftover files from previous tries when I upgraded to Fedora 39 and my old neumodvb installation didn't run anymore.

Are all files from /home/ryle/neumodvb/build/build/lib.linux-x86_64-cpython-312/neumodvb/ meant to stay there or are they supposed to be in a specific path, like /usr/local/lib64/python3.12/site-packages/neumodvb for example ?

If I copy all the files to the path I wrote above, I don't get any python error message, but I get a worse one:
loading options from /etc/neumodvb/neumodvb.cfg Cannot load libcuda.so.1 (neumodvb:9349): Gdk-WARNING **: 10:53:37.069: The program 'neumodvb' received an X Window System error. This probably reflects a bug in the program. The error was 'BadAccess (attempt to access private resource denied)'. (Details: serial 1120 error_code 10 request_code 150 (GLX) minor_code 26) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the GDK_SYNCHRONIZE environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.)

I got the same message with the previous version of neumodvb after I went from FC38 to FC39 so something broke / changed.
GLX seems to be working as glxgears runs correctly.
 
Last edited:

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
TBS 6903 ubuntu 22.04


clang: warning: /home/star/neumodvb/pybind11/include: 'linker' input unused [-Wunused-command-line-argument]
[ 79%] Building CXX object src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o
/home/star/neumodvb/src/receiver/tune.cc:642:23: error: use of undeclared identifier 'current_zone'; did you mean 'current_event'?
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^~~~~~~~~~~~
current_event
/home/star/neumodvb/src/receiver/task.h:229:21: note: 'current_event' declared here
const epoll_event* current_event() const {
^
/home/star/neumodvb/src/receiver/tune.cc:642:12: error: use of undeclared identifier 'zoned_time'
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^
2 errors generated.
make[2]: *** [src/receiver/CMakeFiles/neumoreceiver.dir/build.make:141: src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/receiver/CMakeFiles/neumoreceiver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2


if(!c.is_valid())
return;
auto start_time = system_clock::from_time_t(epg_record.k.start_time);
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));

auto const info = tp.get_time_zone()->get_info(start_time);
start_time += info.offset;
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
[ 78%] Building CXX object src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o
/home/star/neumodvb/src/receiver/tune.cc:642:12: error: use of undeclared identifier 'zoned_time'
auto tp = zoned_time(current_event(), floor<std::chrono::seconds>(start_time));
^
1 error generated.
make[2]: *** [src/receiver/CMakeFiles/neumoreceiver.dir/build.make:141: src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/receiver/CMakeFiles/neumoreceiver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
zoned_time ( what should i write )
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Hi

It seems there might be some leftover files from previous tries when I upgraded to Fedora 39 and my old neumodvb installation didn't run anymore.

Are all files from /home/ryle/neumodvb/build/build/lib.linux-x86_64-cpython-312/neumodvb/ meant to stay there or are they supposed to be in a specific path, like /usr/local/lib64/python3.12/site-packages/neumodvb for example ?

If I copy all the files to the path I wrote above, I don't get any python error message, but I get a worse one:
loading options from /etc/neumodvb/neumodvb.cfg Cannot load libcuda.so.1 (neumodvb:9349): Gdk-WARNING **: 10:53:37.069: The program 'neumodvb' received an X Window System error. This probably reflects a bug in the program. The error was 'BadAccess (attempt to access private resource denied)'. (Details: serial 1120 error_code 10 request_code 150 (GLX) minor_code 26) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the GDK_SYNCHRONIZE environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.)

I got the same message with the previous version of neumodvb after I went from FC38 to FC39 so something broke / changed.
GLX seems to be working as glxgears runs correctly.

In case of problems, and after a major upgrade of the os, it is always best to remove old things in build/.... build_ext/...

I tried myself on fedora39, and got the same errors. However, I found that even the "mpv" command line player does
not work, which points to some problems with dependencies.

Can mpv play video files for you? if that does not work, neumodvb will not work either.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
[ 78%] Building CXX object src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o
/home/star/neumodvb/src/receiver/tune.cc:642:12: error: use of undeclared identifier 'zoned_time'
auto tp = zoned_time(current_event(), floor<std::chrono::seconds>(start_time));
^
1 error generated.
make[2]: *** [src/receiver/CMakeFiles/neumoreceiver.dir/build.make:141: src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/receiver/CMakeFiles/neumoreceiver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
zoned_time ( what should i write )
You should upgrade your ubuntu. Or perhaps there is a way to update libstdc++ or switch to a different (less outdated)
libstdc++
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
I got a lot of errors when I upgraded Ubuntu
Kubuntu 23.10
Kubuntu 23.04

There were many mistakes.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
I didn't get errors when I updated ubuntu.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Hi

It seems there might be some leftover files from previous tries when I upgraded to Fedora 39 and my old neumodvb installation didn't run anymore.

Are all files from /home/ryle/neumodvb/build/build/lib.linux-x86_64-cpython-312/neumodvb/ meant to stay there or are they supposed to be in a specific path, like /usr/local/lib64/python3.12/site-packages/neumodvb for example ?

If I copy all the files to the path I wrote above, I don't get any python error message, but I get a worse one:
loading options from /etc/neumodvb/neumodvb.cfg Cannot load libcuda.so.1 (neumodvb:9349): Gdk-WARNING **: 10:53:37.069: The program 'neumodvb' received an X Window System error. This probably reflects a bug in the program. The error was 'BadAccess (attempt to access private resource denied)'. (Details: serial 1120 error_code 10 request_code 150 (GLX) minor_code 26) (Note to programmers: normally, X errors are reported asynchronously; that is, you will receive the error a while after causing it. To debug your program, run it with the GDK_SYNCHRONIZE environment variable to change this behavior. You can then get a meaningful backtrace from your debugger if you break on the gdk_x_error() function.)

I got the same message with the previous version of neumodvb after I went from FC38 to FC39 so something broke / changed.
GLX seems to be working as glxgears runs correctly.
I think I have found the underlying cause for this (previously undocumented or changed reqirements of some library), but it is complex to fix well.
 

RyLe

Member
Joined
Sep 14, 2011
Messages
30
Reaction score
5
Points
8
Age
44
Location
France
My Satellite Setup
Wavefrontier T90, 8W to 28.2E
TBS 6909-X, TBS 6904SE, TBS 6983
My Location
France
Hi

I can run mpv and play a video on Fedora 39 if i use VirGL GPU (but neumodvb still crashes with the same error).
If I'm on VirtIO GPU or SPICE GPU, I can't play a video with mpv.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Hi

I can run mpv and play a video on Fedora 39 if i use VirGL GPU (but neumodvb still crashes with the same error).
If I'm on VirtIO GPU or SPICE GPU, I can't play a video with mpv.
That is quite an important detail: you are running this in a virtual machine!
What type of virtual machine do you use use (kvm, virtualbox...)?
And what is your main operating system?

Note that virtual machines will only work if the bios of your computer allow pci-express pass through
and if the virtual machine is configured to allow using the dvb cards.

For me that works flawlessly: I can run ubuntu or fedora39 in a kvm virtual machine which runs
on my linux computer which runs fedora38. I can also run windows7 like that on top of fedora38 and
in that way can use ebspro and crazyscan (on some cards. Many are not supported).

In any case, I think I have fixed the problem.
Currently it works in a virtual machine (kvm) with virtio gpu.
I think QXL is better as a driver. That works as well now (and didn't work before).

Even playing multiple services now works.
 

RyLe

Member
Joined
Sep 14, 2011
Messages
30
Reaction score
5
Points
8
Age
44
Location
France
My Satellite Setup
Wavefrontier T90, 8W to 28.2E
TBS 6909-X, TBS 6904SE, TBS 6983
My Location
France
Hi

Your latest modifications did the trick !

I had to manually copy ~/neumodvb/build/build/lib.linux-x86_64-cpython-312/neumodvb/* to
/usr/local/lib64/python3.12/site-packages/neumodvb so I don't have any python error message.

Is there something wrong with a path in a configuration file or the installation script ?

I can now run neumodvb again and this time even with PiP if I want :)

1701888191763.png

I ran Proxmox 8.x (so it's KVM on top of a modified Debian if I understand correctly) and I dedicated two VMs to play with satellite reception:
-Windows 11 for Ebs Pro, DVB Viewer or whatever I need
-Fedora 39 for neumodvb and all the DVB programs I can think of

Each VM has access to my 6909x via PCIe passthrough via a Thunderbolt enclosure (not at the same time of course).
Currently I use SPICE/QXL as the display for those VMs.
I access the VMs display from another computer using "Virtual Machine Viewer" (virt-viewer).

I mainly use a mix of stid135-blindscan, neumo-tune and dvbstream, all wrapped in a shell script I wrote to quickly blindscan satellites, show the results in a ncurses list and stream the tuned signal to the network.
Then I might use VLC or PotPlayer to view the channels / feeds.

TSReaderLite runs quite nicely on the Linux VM using Wine if I need.
 

deeptho

Specialist Contributor
Joined
Apr 7, 2006
Messages
765
Reaction score
464
Points
63
Age
57
My Satellite Setup
Wavefrontier T90, Laminas 120cm, 2 other dishes; tbs 5927, tbs6904, tbs6909x, tbs6903x, tbs5990, tbs6981,tbs5927
My Location
Europe
Hi

Your latest modifications did the trick !
Thansk for the confirmation.

I had to manually copy ~/neumodvb/build/build/lib.linux-x86_64-cpython-312/neumodvb/* to
/usr/local/lib64/python3.12/site-packages/neumodvb so I don't have any python error message.
The best advice is to not install anything because otherwise that leads to people reporting bugs related
to some unknown older installed version, which they have forgotton that was installed.

Instead run the program from within the gui directory (and do not use "make install").

Installation should work, but it should install in /usr/lib64 and not in /usr/local/

How did you install? And how did files end up in /usr/local?

Is there something wrong with a path in a configuration file or the installation script ?

I can now run neumodvb again and this time even with PiP if I want :)

View attachment 153208

I ran Proxmox 8.x (so it's KVM on top of a modified Debian if I understand correctly) and I dedicated two VMs to play with satellite reception:
-Windows 11 for Ebs Pro, DVB Viewer or whatever I need
-Fedora 39 for neumodvb and all the DVB programs I can think of
This can indeed work. It requires selecting proper settings in the bios.

Each VM has access to my 6909x via PCIe passthrough via a Thunderbolt enclosure (not at the same time of course).
Currently I use SPICE/QXL as the display for those VMs.
I access the VMs display from another computer using "Virtual Machine Viewer" (virt-viewer).
You could give the QXL driver a try. If I remember correctly it had some advantages

I mainly use a mix of stid135-blindscan, neumo-tune and dvbstream, all wrapped in a shell script I wrote to quickly blindscan satellites, show the results in a ncurses list and stream the tuned signal to the network.

Nice. Streaming would be relatively easy to add to neumoDVB. That would have the advantage of not having to use a separate program.
In fact, you can tune a mux and then read from one of the /dev/dvb/adapter devices and read the transport stream and then do whatever you want with that (probably netcat can send the stream). If you tune a service, then the stream will be a partial TS stream, which can
be decoded by vlc.

As the main program is in python, you can also directly access tuning functions from python and write small programs that tuen muxes,
wait for some data to arrive and then take some action.


Then I might use VLC or PotPlayer to view the channels / feeds.

TSReaderLite runs quite nicely on the Linux VM using Wine if I need.
 

RyLe

Member
Joined
Sep 14, 2011
Messages
30
Reaction score
5
Points
8
Age
44
Location
France
My Satellite Setup
Wavefrontier T90, 8W to 28.2E
TBS 6909-X, TBS 6904SE, TBS 6983
My Location
France
I followed the instructions on the installation page, so the last two commands I run are:
cd ~/neumodvb/build sudo make install

neumodvb/build/install_manifest.txt has the following entries:
/usr/lib64/libstackstring.so /usr/lib64/libneumodb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyneumodb.cpython-312-x86_64-linux-gnu.so /usr/bin/neumoupgrade /usr/local/lib64/python3.12/site-packages/neumodvb/pydevdb.cpython-312-x86_64-linux-gnu.so /usr/lib64/libdevdb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pychdb.cpython-312-x86_64-linux-gnu.so /usr/lib64/libchdb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pystatdb.cpython-312-x86_64-linux-gnu.so /usr/lib64/libstatdb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyepgdb.cpython-312-x86_64-linux-gnu.so /usr/lib64/libepgdb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyrecdb.cpython-312-x86_64-linux-gnu.so /usr/lib64/librecdb.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyschemadb.cpython-312-x86_64-linux-gnu.so /usr/lib64/libschema.so /usr/lib64/libneumoreceiver.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyreceiver.cpython-312-x86_64-linux-gnu.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyspectrum.cpython-312-x86_64-linux-gnu.so /usr/lib64/libstreamparser.a /usr/lib64/libneumoutil.so /usr/local/lib64/python3.12/site-packages/neumodvb/pyneumompv.cpython-312-x86_64-linux-gnu.so /usr/lib64/libneumolmdb.a

In neumodvb/build/CMakeCache.txt I can see
_Python_INTERPRETER_PROPERTIES:INTERNAL=Python;3;12;0;64;;cpython-312-x86_64-linux-gnu;abi3;/usr/lib64/python3.12;/usr/local/lib64/python3.12;/usr/local/lib/python3.12/site-packa ges;/usr/local/lib64/python3.12/site-packages


I use QXL drivers with SPICE (see link).
I forgot to list it, but yes, I pipe dvbstream output to nc (netcat).
For some time I indeed used neumodvb for tuning and getting signal levels and in parallel I ran dvbstream and nc.
I know pretty much nothing about python coding (and to be honest not a lot more about bash scripts either).

About getting signal levels, I run dvb-fe-tool, it used to work perfectly but a few months ago, a libc update seems to have brought a bug to light that randomly makes dvb-fe-tool crash at launch (it works ok on the subsequent launches).

Is there something from the neumodvb package (or blindscan tools) that could replace it in a command line?
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
Ubuntu Mate 22.4 ( same problem )

/home/star/neumodvb/src/receiver/tune.cc:642:23: error: use of undeclared identifier 'current_zone'; did you mean 'current_event'?
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^~~~~~~~~~~~
current_event
/home/star/neumodvb/src/receiver/task.h:229:21: note: 'current_event' declared here
const epoll_event* current_event() const {
^
/home/star/neumodvb/src/receiver/tune.cc:642:12: error: use of undeclared identifier 'zoned_time'
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^
2 errors generated.
make[2]: *** [src/receiver/CMakeFiles/neumoreceiver.dir/build.make:141: src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/receiver/CMakeFiles/neumoreceiver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
star@star-Vostro-3670:~/neumodvb/build$
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
How can I fix this? Here is the problem.

auto start_time = system_clock::from_time_t(epg_record.k.start_time);
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));

auto const info = tp.get_time_zone()->get_info(start_time);
start_time += info.offset;
 

Llew

cerca trova...
Staff member
Joined
Jan 1, 2000
Messages
16,256
Reaction score
4,217
Points
113
Age
82
My Satellite Setup
Triple Dragon, Dreambox 8000, Echostar AD3000ip, TBS6522,6925,6983 PCie cards.
Gibertini 1.25m motorised dish driven by the AD3000, with either Inverto BU Quad or Norsat / XMW Ka LNBs . SMW 1.05m + 3 other dishes. Speccy: Promax HD Ranger+
My Location
The Flatlands of East Anglia
Ubuntu Mate 22.4 ( same problem )

/home/star/neumodvb/src/receiver/tune.cc:642:23: error: use of undeclared identifier 'current_zone'; did you mean 'current_event'?
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^~~~~~~~~~~~
current_event
/home/star/neumodvb/src/receiver/task.h:229:21: note: 'current_event' declared here
const epoll_event* current_event() const {
^
/home/star/neumodvb/src/receiver/tune.cc:642:12: error: use of undeclared identifier 'zoned_time'
auto tp = zoned_time(current_zone(), floor<std::chrono::seconds>(start_time));
^
2 errors generated.
make[2]: *** [src/receiver/CMakeFiles/neumoreceiver.dir/build.make:141: src/receiver/CMakeFiles/neumoreceiver.dir/tune.cc.o] Error 1
make[1]: *** [CMakeFiles/Makefile2:1457: src/receiver/CMakeFiles/neumoreceiver.dir/all] Error 2
make: *** [Makefile:136: all] Error 2
star@star-Vostro-3670:~/neumodvb/build$
Sadly, same errors here with Ubuntu 22.4 when building the latest version.

I haven't tried the Mate version yet, probably the same problem.

I'm updating Fedora 37 at present, we'll see if it has similar errors.
 

ptergrand

Member
Joined
Jul 14, 2023
Messages
120
Reaction score
20
Points
18
Age
44
My Satellite Setup
bu siteyi çok seviyorum
My Location
bu siteyi çok seviyorum
I deleted some files and uploaded them at noon

if(!c.is_valid())
return;
641






648
}

void tuner_thread_t::add_live_buffer(const recdb::live_service_t& live_service) {
using namespace recdb;
auto wtxn = recdbmgr.wtxn();
auto c = live_service_t::find_by_key(wtxn, live_service.owner, live_service.subscription_id, find_type_t::find_eq);
if(c.is_valid()) {
auto old = c.current();
dtdebugf("updating live_service: last_use_time from={} new={}",
fmt::localtime(old.last_use_time), fmt::localtime(live_service.last_use_time));
} else {
dtdebugf("new live_service: last_use_time={}", fmt::localtime(live_service.last_use_time));
}
c.destroy();
put_record(wtxn, live_service);
wtxn.commit();
}

/*
indicate that livebuffer is now not in use any more; it will be removed after an expiration period
*/
 
Top