blendb issueshttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues2018-07-31T14:27:01Zhttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/80Centralizar parsers para enums2018-07-31T14:27:01ZLucas Fernandes de OliveiraCentralizar parsers para enumsAtulamente as funções que traduzem strings para Enums e vice-versa espalhadas em diversas classes, as que tem maior necessidade de utilizar essas funções, porém isso se torna incoveniente se mais de uma classe precisa do parser.
Criar u...Atulamente as funções que traduzem strings para Enums e vice-versa espalhadas em diversas classes, as que tem maior necessidade de utilizar essas funções, porém isso se torna incoveniente se mais de uma classe precisa do parser.
Criar um arquivo no diretório **utils** chamado **enumHandler** que deve contém métodos estáticos para manipulação dos enums1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/79Criar Views (materializadas) quando não existem2018-06-06T12:04:37ZLucas Fernandes de OliveiraCriar Views (materializadas) quando não existemAtualmente existe uma variável **BLENDB_ST_CREATE** que quando é verdadeira cria as tabelas de teste e quando é falsa apenas trunca.
Remover essa váriavel e em caso de teste criar as tabelas que não existem ao invés de falhar a execuçãoAtualmente existe uma variável **BLENDB_ST_CREATE** que quando é verdadeira cria as tabelas de teste e quando é falsa apenas trunca.
Remover essa váriavel e em caso de teste criar as tabelas que não existem ao invés de falhar a execução1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/78Adicionar yarn e npm shrinkwrap2018-05-07T12:19:25ZLucas Fernandes de OliveiraAdicionar yarn e npm shrinkwrapO yarn promete ser uma evolução do npm. Não se sabe se o yarn subtituirá completamente o npm mas o principal motivo para realizar a mudança é o fato de o yarn utilizar por padrão o travamento preciso da versão dos pacotes.
Essa funciona...O yarn promete ser uma evolução do npm. Não se sabe se o yarn subtituirá completamente o npm mas o principal motivo para realizar a mudança é o fato de o yarn utilizar por padrão o travamento preciso da versão dos pacotes.
Essa funcionalidade está disponível com o npm utilizando o comando npm shrinkwrap.
Como o docker está sendo utilizado, a versão dos pacotes deve ser precisa.
Alterar configurações necessaŕias e arquivos Docker para utilização de versão precisa.1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/77Definir local para os tipos2018-05-15T13:02:19ZRafael DiasDefinir local para os tiposQuais são e aonde estão definidos os tipos que serão usados como padrão no BlendbQuais são e aonde estão definidos os tipos que serão usados como padrão no Blendb1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/76Palavras compostas no arquivo de configuração YAML2018-04-05T13:34:52ZLucas Fernandes de OliveiraPalavras compostas no arquivo de configuração YAMLO parsing das propriedades do arquivo de configuração é *case sensitive* isso faz com que chaves como **enumType** e **dataType** sejam diferentes de **enumtype** e **datatype**.
Seria prudente manter o padrão, ou realizar um preprocess...O parsing das propriedades do arquivo de configuração é *case sensitive* isso faz com que chaves como **enumType** e **dataType** sejam diferentes de **enumtype** e **datatype**.
Seria prudente manter o padrão, ou realizar um preprocessamento para converter todas as propriedades para letras minúsculas ??
Uma diferentça dessa magnitude pode ser difícil de detectar em um processo de Debug. Como proceder ?
Quão diffcíl seria converter apenas as chaves para letras minúsculas ?
Seria prudente remover as palavars compostas e utilizar apenas palavars simples ?Revisionhttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/73Gerar cobertura de código como artefato do pipeline2018-05-16T13:40:42ZLucas Fernandes de OliveiraGerar cobertura de código como artefato do pipelineAo executar um pipeline a bobertura de código deve ser devolvida como uma artefato, assim é possível verificar as linhas dos novos arquivos que adicionadosAo executar um pipeline a bobertura de código deve ser devolvida como uma artefato, assim é possível verificar as linhas dos novos arquivos que adicionados1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/72Remover arquivos legados2018-04-05T14:06:52ZLucas Fernandes de OliveiraRemover arquivos legadosAlguns arquivos, como ```src/core/server``` e ```src/core/transformer``` são arquivos de uma versão legada que não são utilizados atualmente. Esses arquivos "inuteis" devem ser removidos pois provavelmente se sua funcionalidade for requi...Alguns arquivos, como ```src/core/server``` e ```src/core/transformer``` são arquivos de uma versão legada que não são utilizados atualmente. Esses arquivos "inuteis" devem ser removidos pois provavelmente se sua funcionalidade for requisitada, provavelmente não será compatível com a versão atual (o que ocorreu com ```src/core/source```)1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/68Adicionar tipo de retorno em todos os métodos2018-04-05T14:38:37ZLucas Fernandes de OliveiraAdicionar tipo de retorno em todos os métodosAlgumas classes possuem métodos que não dizem explicitamente o tipo de retorno. Definir o tipo explicitamente.Algumas classes possuem métodos que não dizem explicitamente o tipo de retorno. Definir o tipo explicitamente.1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/67Validar dataType2018-05-15T13:02:06ZRafael DiasValidar dataTypeÈ necessario validar o dataType contido no arquivo de configuração ```config/config.yaml```.È necessario validar o dataType contido no arquivo de configuração ```config/config.yaml```.1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/65Adicionar rota para tipos enumerais e campo no arquivo de configuração2018-04-04T13:11:37ZLucas Fernandes de OliveiraAdicionar rota para tipos enumerais e campo no arquivo de configuraçãoAdicionar um novo campo ao arquivo de configuração que permite definir tipos enumeráveis. Esses tipos estão disponíveis para o campo "datatype".
Essa rota deve listar as fontes existentes:
* [x] Criar classe EnumType -- ```src/core/enu...Adicionar um novo campo ao arquivo de configuração que permite definir tipos enumeráveis. Esses tipos estão disponíveis para o campo "datatype".
Essa rota deve listar as fontes existentes:
* [x] Criar classe EnumType -- ```src/core/enumType.ts```
* [x] Ler Enums a partir do arquivo de configuração -- ```src/util/configParser.ts```
* [x] Adicionar as enums lidas a Engine -- ```src/core/engine.ts```
* [x] Criar a rota no arquivo RAML -- ```spec/*.raml```
* [x] Adcionar um rota no controller da engine que devolve as fontes -- ```src/api/controllers/engine.ts```
O enum basicamente é uma lista de strings, no arquivo de configuração uma lista de strings deve ser lidas, essa representa os valores possíveis.
Para ler do arquivo de configuração há dois campos
name: nome do enum
values: uma lista (de strings) com os valores possíveis1.0Rafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/64Atualizar exemplo de configuração2018-03-19T11:49:27ZLucas Fernandes de OliveiraAtualizar exemplo de configuraçãoOs arquivos exemplo de configuração estão em um formato antigo, devem ser atualzados para serem compatíveis com as configurações atuais.
Os novos arquivos exemplo devem conter um exemplo de cada campo possível e este deve ser comentado,...Os arquivos exemplo de configuração estão em um formato antigo, devem ser atualzados para serem compatíveis com as configurações atuais.
Os novos arquivos exemplo devem conter um exemplo de cada campo possível e este deve ser comentado, exemplificando sua funçãohttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/60Criação de views materializadas no MonetDB2018-04-03T12:09:06ZLucas Fernandes de OliveiraCriação de views materializadas no MonetDBMonetDB não tem suporte a views materializadas. Para corrigir essa falha a proposta é criar uma tabela e inserir os dados relativos.MonetDB não tem suporte a views materializadas. Para corrigir essa falha a proposta é criar uma tabela e inserir os dados relativos.Revisionhttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/58Adicionar testes automatizados para o Adaptador de MonetDB2018-07-10T12:03:46ZLucas Fernandes de OliveiraAdicionar testes automatizados para o Adaptador de MonetDBA propósta é utilziar os mesmos testes tanto para o MonetDB quanto para o Postgres.
Essa issue está impedida pelo fato de não haver um *runner* adequaqdo para executar testes no postgres e no monet
Adicionar uma opções de adaptador tes...A propósta é utilziar os mesmos testes tanto para o MonetDB quanto para o Postgres.
Essa issue está impedida pelo fato de não haver um *runner* adequaqdo para executar testes no postgres e no monet
Adicionar uma opções de adaptador test (que deve ser usada apenas para testes) que executas os testes em todos os adaptadores.
Quando outra opções além dessa é usada deve-se pular os testes dos outros adaptadoresRevisionRafael DiasRafael Diashttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/54Reestrututar arquivos de configuração2017-12-20T11:17:26ZLucas Fernandes de OliveiraReestrututar arquivos de configuraçãoTransformar os campos struct e connection em variáveis de ambiente.Transformar os campos struct e connection em variáveis de ambiente.Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/52Adicionar verificação de texto (linter) ao projeto2017-12-04T10:54:01ZLucas Fernandes de OliveiraAdicionar verificação de texto (linter) ao projetoEmbora o projeto tenha uma configuração de linter ele não é utilizado ao gerar uma build. Falhar a build se o projeto não atender os padrões do linter.Embora o projeto tenha uma configuração de linter ele não é utilizado ao gerar uma build. Falhar a build se o projeto não atender os padrões do linter.Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/44Mover metricas dimensionais para Engine2018-05-16T13:40:54ZLucas Fernandes de OliveiraMover metricas dimensionais para EngineAtualmente as métricas dimensionais são tratadas apenas pelo adapter. Esse efeito surge ao realizar certos Joins entre as views sobre certas condições.
Descobrir se esse problema já pode ser detectado na Engine, e resolvido nesse ponto....Atualmente as métricas dimensionais são tratadas apenas pelo adapter. Esse efeito surge ao realizar certos Joins entre as views sobre certas condições.
Descobrir se esse problema já pode ser detectado na Engine, e resolvido nesse ponto. Provavelmente se isso for possivel, a view deverá ter uma estrutura mais elaborada do que um vetor de childViews para passar ao adapter para gerar a consulta. Provavelmente terá que indicar exatamente quais joins devem ser feitos e quais agregações devem ser feitas.
Com essa alteração o adapter terá que ser refatorado (Novamente), mas provavelmente deverá ficar mais simples.1.0Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/43Melhorar testes do adapatdor (novamente :( )2018-04-03T12:02:38ZLucas Fernandes de OliveiraMelhorar testes do adapatdor (novamente :( )Os testes do adpatador, quando a consulta é um sucesso, verificar os valores retornado para garantir que o resultado da consulta está realmente certo, não apenas se todos os atributos pedidos na consulta foram retornados.
Poucos testes ...Os testes do adpatador, quando a consulta é um sucesso, verificar os valores retornado para garantir que o resultado da consulta está realmente certo, não apenas se todos os atributos pedidos na consulta foram retornados.
Poucos testes fazem essa verificação1.0Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/40Atualizar modo como métricas, dimensões e views são referenciadas nos testes.2017-08-25T12:34:29ZLucas Fernandes de OliveiraAtualizar modo como métricas, dimensões e views são referenciadas nos testes.Durante os testes as métricas, dimensões e views são lidas e armazenadas em vetores. Até a Issue #39) isso não foi um problema, mas agora em todos os testes isso deve ser corrigido. A princio uma mudança no arquivo de scenario, que conce...Durante os testes as métricas, dimensões e views são lidas e armazenadas em vetores. Até a Issue #39) isso não foi um problema, mas agora em todos os testes isso deve ser corrigido. A princio uma mudança no arquivo de scenario, que concentra todos os testes e lê do arquivo de configuração grande parte dos dados usados nos testes deve concertar o problema. Mas ainda assim outros locais devem ser conferidos e subtitiuidos.
Encontrar referências a métricas, dimensões e views que utilizam índice e realizar a ordenação apropriada para corrigir o erro de forma mais rápida.Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/39Função de agregação MAX e MIN não foram definidas2017-08-25T11:57:51ZLucas Fernandes de OliveiraFunção de agregação MAX e MIN não foram definidasAdicionar MAX e MIN ao tipo AggregationType e adcionar nos respectilos locais necessários (ConfigParser e PostgresAdapter se não me engano)Adicionar MAX e MIN ao tipo AggregationType e adcionar nos respectilos locais necessários (ConfigParser e PostgresAdapter se não me engano)Lucas Fernandes de OliveiraLucas Fernandes de Oliveirahttps://gitlab.c3sl.ufpr.br/c3sl/blendb/-/issues/33Melhorar função de analise dos filtros2017-10-16T11:49:30ZLucas Fernandes de OliveiraMelhorar função de analise dos filtrosA escolha de views e agregações é limitada pelos filtros aplicados. No momento apenas se o filtro casar perfeitamente (tem que se identico) a view é escolhida. En varios casos é o suficiente (Para operadores == e !=), porém com o operado...A escolha de views e agregações é limitada pelos filtros aplicados. No momento apenas se o filtro casar perfeitamente (tem que se identico) a view é escolhida. En varios casos é o suficiente (Para operadores == e !=), porém com o operador de > por exemplo, se a restrição é de maior que 3 meses, maior que 6 meses também poderia utilizar essa view, mas isso não ocorre.
Operadores individuais parecem simples de resolver, bastaria olhar o operador do filtro e aplicar algumas comparações, entretanto quando combinados com operador OR (maior que 3 meses ou ativo) já não funciona tão bem.
Acredito que o melhor é analizar alguns casos que seriam mais úteis que e que mais ocorrem e tentar abordar esse modelo mais restrito do que acertar 100% dos casos.
Encontrar essa lista de casos e melhorar a escolha dos filtros, a principio modificar a função checkConstranits da classe graph deve ser o suficiente para aplicar as mudanças.Lucas Fernandes de OliveiraLucas Fernandes de Oliveira