Jump to content


Photo

eepgcache and title searching


  • Please log in to reply
203 replies to this topic

Re: eepgcache and title searching #81 ims

  • PLi® Core member
  • 13,781 posts

+214
Excellent

Posted 22 January 2012 - 17:03

I saw into epg.dat. There is text still in "Two Char Mapping" and missing same parts, as on screen.
Kdo nic nedělá, nic nezkazí!

Re: eepgcache and title searching #82 DimitarCC

  • PLi® Contributor
  • 1,573 posts

+70
Good

Posted 22 January 2012 - 17:19

Well it seemd there is no fix for that yet! Right? On my EPG many many titles get missing by this bug! So i hope soon fix!

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: eepgcache and title searching #83 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 22 January 2012 - 19:36

Well it seemd there is no fix for that yet! Right? On my EPG many many titles get missing by this bug! So i hope soon fix!

I think I have found the problem and am working on a fix for this

Re: eepgcache and title searching #84 bigroma

  • Member
  • 35 posts

+11
Neutral

Posted 22 January 2012 - 21:24

Great, we're waiting patch for testing.

Re: eepgcache and title searching #85 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 22 January 2012 - 21:45

Great, we're waiting patch for testing.

Here is the fix or potential fix if you will
@ims - you were right it had to do with the length but not in the way I had originally thought

Changes
------------------

Fix for short event description data not showing up

After converting our titles to UTF8 we have the problem that they no
longer fit into a short event descriptor structure because the length
is only 8 bits. Split the title and text of short event descriptor to
better deal with this. Also add a hack to hardcode a data length when
our data is too long.

Splitting the title and text makes us waste some memory, however
since we split title and text we end up saving anywhere in the range
of 10 to 30 % on title storage. This is because previously we checked
to see if the entire descriptor was a duplicate, which didnt match duplicate
titles when it could have.

Also fix a memory leak in the process.

TODO: fix all text storage not to use the dvb descriptor format, possibly use
a title and text index as this is sort of what we are doing now with the descriptor
map.
------------------

Use only one constructor for eventData

We can use one eventData constructor as they both do more or less the same thing.

Attached Files



Re: eepgcache and title searching #86 ims

  • PLi® Core member
  • 13,781 posts

+214
Excellent

Posted 22 January 2012 - 21:52

it is patch for OpenPLi git ?
Kdo nic nedělá, nic nezkazí!

Re: eepgcache and title searching #87 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 22 January 2012 - 21:56

it is patch for OpenPLi git ?

Yes, it should be, I hadn't pull the last 4 commits, but these files were not affect in those, so it should merge right in.
Although I had merged my changes on to master from a branch I had, which I may have messed up, but diff shows that the areas affect are the same, so should be fine.

Re: eepgcache and title searching #88 ims

  • PLi® Core member
  • 13,781 posts

+214
Excellent

Posted 22 January 2012 - 22:05

thanks, it seems, it works.
Kdo nic nedělá, nic nezkazí!

Re: eepgcache and title searching #89 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 22 January 2012 - 22:07

thanks, it seems, it works.

thanks as well to you for all the help

Re: eepgcache and title searching #90 Nikei

  • Senior Member
  • 60 posts

0
Neutral

Posted 23 January 2012 - 05:45

Today has updated, too most

Attached Files



Re: eepgcache and title searching #91 DimitarCC

  • PLi® Contributor
  • 1,573 posts

+70
Good

Posted 23 January 2012 - 06:29

so is that will be commited to ofitial repository?

Vu+DUO4KSE, DM920UHD, Vu+Uno4KSE, SF8008Mini, 2xPulse4K, Vu+Solo2, Dreambox DM500HD, Triax 78 (7E,9E,13E,19.2E,23.5E) & 2xTriax 78 (39E)


Re: eepgcache and title searching #92 bigroma

  • Member
  • 35 posts

+11
Neutral

Posted 23 January 2012 - 07:48

Thx, but after patch without ANY changes:)

36e 9e

Maybe you see this sats or maybe some information from me can help?

Edited by bigroma, 23 January 2012 - 07:50.


Re: eepgcache and title searching #93 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 23 January 2012 - 08:07

Thx, but after patch without ANY changes:)

36e 9e

Maybe you see this sats or maybe some information from me can help?

Will likely need to make a special patch for you to get some more information.
In the meantime there are two added in the patch with 255 - 6, could you change these to 255 - 7

Little explanation behind this, 255 - 6 is a check to make sure that when we add our title length together with the overhead of the rest of the descriptor the descriptor length still fits into the byte used to store the length. Now I thought that 255 -6 would end up storing 0xFF in the field when our data was too long.

So if you could try 255 - 7, and let me know that would be great. Otherwise I will try and provide you with a patch for more debug later in the day.

Re: eepgcache and title searching #94 blzr

  • PLi® Core member
  • 2,270 posts

+118
Excellent

Posted 23 January 2012 - 08:12

seems that it hasn't been commited yet, that's why problem still appears...
http://openpli.git.s...igma2;a=summary
True sarcasm doesn't need green font...

Re: eepgcache and title searching #95 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 23 January 2012 - 08:14

Please let me know if the results are based on a local patched build or from the nightly.

Re: eepgcache and title searching #96 bigroma

  • Member
  • 35 posts

+11
Neutral

Posted 23 January 2012 - 08:46

Excuse me, but i didn't understand where i must change 255-6 to 256-7. I didn't see it in last patch.

Re: eepgcache and title searching #97 ims

  • PLi® Core member
  • 13,781 posts

+214
Excellent

Posted 23 January 2012 - 09:17

I dont know, why it was not commited. ... was weekend ;)

Edited by ims, 23 January 2012 - 09:17.

Kdo nic nedělá, nic nezkazí!

Re: eepgcache and title searching #98 pieterg

  • PLi® Core member
  • 32,766 posts

+245
Excellent

Posted 23 January 2012 - 10:44

I'd rather not commit something before it's final ;)

Has it been investigated what happens if an incomplete utf8 sequence it present, because of the truncate hack?
We have to know how the various utf8 parsers (c++, python) handle such situations.
Or rather, we should never store incomplete utf8 sequences.

By using a truncate function such as this (untested):
   	 if (data[length - 1] > 0x7F)
        {
            do
            {
                /* remove all UTF data bytes, not including the start byte, which is {0xC0 <= startbyte <= 0xFD} */
                length--;
            }
            while (length > 0 && data[length - 1] <= 0xBF); /* remove only databytes */
        }
        /* remove the UTF startbyte, or normal ascii character */
        if (length > 0)
        {
            length--;
        }
        data[length] = 0;


Re: eepgcache and title searching #99 Nikei

  • Senior Member
  • 60 posts

0
Neutral

Posted 23 January 2012 - 11:14

This problem has appeared after updating on January, 17th, before all was good.

Re: eepgcache and title searching #100 awx

  • Senior Member
  • 297 posts

+17
Neutral

Posted 23 January 2012 - 11:34

I'd rather not commit something before it's final ;)

Has it been investigated what happens if an incomplete utf8 sequence it present, because of the truncate hack?
We have to know how the various utf8 parsers (c++, python) handle such situations.
Or rather, we should never store incomplete utf8 sequences.

By using a truncate function such as this (untested):

   	 if (data[length - 1] > 0x7F)
		{
			do
			{
				/* remove all UTF data bytes, not including the start byte, which is {0xC0 <= startbyte <= 0xFD} */
				length--;
			}
			while (length > 0 && data[length - 1] <= 0xBF); /* remove only databytes */
		}
		/* remove the UTF startbyte, or normal ascii character */
		if (length > 0)
		{
			length--;
		}
		data[length] = 0;

If you dont take this fix, then you should at least for the time being take the memleak patch I have posted.
A full solution to this fix is only possible with a large rewrite of eventData, or some other more hacked methods, as such this is not a quick fix and the changes should be reverted.


5 user(s) are reading this topic

0 members, 5 guests, 0 anonymous users